-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbuild.xml
95 lines (80 loc) · 2.7 KB
/
build.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
<?xml version="1.0" encoding="UTF-8"?>
<project name="project" default="default" basedir="."
xmlns:fx="javafx:com.sun.javafx.tools.ant">
<!-- ビルド情報 -->
<description>SimpleApp6のビルド</description>
<property name="appName" value="MDIApp1"/>
<property name="mainClass" value="jp.seraphyware.mdiapp1.MDIApp1"/>
<property name="vendorName" value="seraphyware.jp"/>
<!-- Jdk8のjavapackagerのantタスクを定義する -->
<taskdef resource="com/sun/javafx/tools/ant/antlib.xml"
uri="javafx:com.sun.javafx.tools.ant"
classpath=".:${java.home}/../lib/ant-javafx.jar" />
<!-- アプリケーション情報 -->
<fx:application
id="appid"
name="${appName}"
mainClass="${mainClass}"/>
<!-- 実行可能jarとしてビルドする -->
<target name="default" description="ビルドと実行可能jarの作成">
<delete dir="work"/>
<mkdir dir="work"/>
<javac srcdir="src" destdir="work" encoding="UTF-8"
includeantruntime="false">
<classpath>
<pathelement path="work"/>
</classpath>
</javac>
<fx:jar destfile="${appName}">
<fx:application refid="appid"/>
<fileset dir="work"/>
<fileset dir="src" excludes="**/*.java"/>
<manifest>
<attribute name="Implementation-Vendor" value="${vendorName}"/>
<attribute name="Implementation-Version" value="1.0"/>
</manifest>
</fx:jar>
<delete dir="work"/>
</target>
<!-- OSによるアイコンファイルの違い -->
<condition property="iconName" value="icon.icns">
<and>
<os family="unix" />
<os family="mac" />
</and>
</condition>
<condition property="iconName" value="icon.ico" else="icon.png">
<os family="windows" />
</condition>
<!-- バンドルの作成 -->
<target name="makeBundles" depends="default"
description="自己完結型アプリケーションのパッケージ化">
<echo message="iconName=${iconName}"/>
<delete dir="dist"/>
<mkdir dir="dist"/>
<!-- JREを含む実行イメージの作成.(imageタイプ)
nativeBundles="all"にすると、現在のビルド時の環境で作成できる、
すべてのタイプのインストーラを含む配布パッケージを作成する.
* WindowsならInnoSetupがあればexe形式、WiXがあればmsi形式を作成する.
* Macの場合はdmgとpkgを作成する.
* Linuxの場合はdebとrpmを作成する.
-->
<fx:deploy
width="800"
height="600"
nativeBundles="image"
outdir="dist"
outfile="${appName}">
<fx:application refid="appid"/>
<fx:resources>
<fx:fileset dir="." includes="${appName}.jar"/>
</fx:resources>
<fx:info
title="${appName}"
vendor="${vendorName}">
<fx:icon href="icons/${iconName}">
</fx:icon>
</fx:info>
</fx:deploy>
</target>
</project>