Skip to content

Commit f9d637d

Browse files
committed
Restore default macOS dmg behavior.
Reformat to reduced indentation.
1 parent 219537d commit f9d637d

1 file changed

Lines changed: 92 additions & 87 deletions

File tree

build.xml

Lines changed: 92 additions & 87 deletions
Original file line numberDiff line numberDiff line change
@@ -1,105 +1,110 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<project name="MyAntApp" default="package" basedir=".">
33

4-
<property name="app.name" value="SampleApp"/>
5-
<property name="app.version" value="1.0.0"/>
6-
<property name="main.class" value="Main"/>
4+
<property name="app.name" value="SampleApp"/>
5+
<property name="app.version" value="1.0.0"/>
6+
<property name="main.class" value="Main"/>
77

8-
<property name="src.dir" value="src"/>
9-
<property name="build.dir" value="build/classes"/>
10-
<property name="jar.dir" value="build/jar"/>
11-
<property name="dist.dir" value="dist"/>
8+
<property name="src.dir" value="src"/>
9+
<property name="build.dir" value="build/classes"/>
10+
<property name="jar.dir" value="build/jar"/>
11+
<property name="dist.dir" value="dist"/>
1212

13-
<condition property="isMac">
14-
<os family="mac"/>
15-
</condition>
13+
<condition property="isMac">
14+
<os family="mac"/>
15+
</condition>
1616

17-
<condition property="isLinux">
18-
<and>
19-
<os family="unix"/>
20-
<not><os family="mac"/></not>
21-
</and>
22-
</condition>
17+
<condition property="isLinux">
18+
<and>
19+
<os family="unix"/>
20+
<not><os family="mac"/></not>
21+
</and>
22+
</condition>
2323

24-
<condition property="icon.file" value="icon.icns" else="icon.png">
25-
<isset property="isMac"/>
26-
</condition>
24+
<condition property="icon.file" value="icon.icns" else="icon.png">
25+
<isset property="isMac"/>
26+
</condition>
2727

28-
<target name="clean" description="Remove all build and distribution files">
29-
<delete dir="build"/>
30-
<delete dir="${dist.dir}"/>
31-
</target>
28+
<target name="clean" description="Remove all build and distribution files">
29+
<delete dir="build"/>
30+
<delete dir="${dist.dir}"/>
31+
</target>
3232

33-
<target name="compile" description="Compile Java source code">
34-
<mkdir dir="${build.dir}"/>
35-
<javac srcdir="${src.dir}"
36-
destdir="${build.dir}"
37-
includeantruntime="false"
38-
debug="true"/>
39-
</target>
33+
<target name="compile" description="Compile Java source code">
34+
<mkdir dir="${build.dir}"/>
35+
<javac srcdir="${src.dir}"
36+
destdir="${build.dir}"
37+
includeantruntime="false"
38+
debug="true"/>
39+
</target>
4040

41-
<target name="jar" depends="compile" description="Package classes into an executable JAR">
42-
<mkdir dir="${jar.dir}"/>
43-
<jar destfile="${jar.dir}/${app.name}.jar" basedir="${build.dir}">
44-
<manifest>
45-
<attribute name="Main-Class" value="${main.class}"/>
46-
<attribute name="Implementation-Version" value="${app.version}"/>
47-
</manifest>
48-
</jar>
49-
</target>
41+
<target name="jar" depends="compile" description="Package classes into an executable JAR">
42+
<mkdir dir="${jar.dir}"/>
43+
<jar destfile="${jar.dir}/${app.name}.jar" basedir="${build.dir}">
44+
<manifest>
45+
<attribute name="Main-Class" value="${main.class}"/>
46+
<attribute name="Implementation-Version" value="${app.version}"/>
47+
</manifest>
48+
</jar>
49+
</target>
5050

51-
<target name="run" depends="jar" description="Run the application from the JAR for testing">
52-
<java jar="${jar.dir}/${app.name}.jar" fork="true"/>
53-
</target>
51+
<target name="run" depends="jar" description="Run the application from the JAR for testing">
52+
<java jar="${jar.dir}/${app.name}.jar" fork="true"/>
53+
</target>
5454

55-
<target name="package" description="Build the native installer for the current OS (DMG or DEB)">
56-
<antcall target="dmg"/>
57-
<antcall target="debian"/>
58-
</target>
55+
<target name="package" description="Build the native installer for the current OS (DMG or DEB)">
56+
<antcall target="dmg"/>
57+
<antcall target="debian"/>
58+
</target>
5959

60-
<target name="dmg" depends="jar" if="isMac" description="[Mac Only] Builds the .dmg installer">
61-
<mkdir dir="${dist.dir}"/>
62-
<exec executable="jpackage" failonerror="true">
63-
<arg value="--input"/><arg value="${jar.dir}"/>
64-
<arg value="--dest"/><arg value="${dist.dir}"/>
65-
<arg value="--name"/><arg value="${app.name}"/>
66-
<arg value="--main-jar"/><arg value="${app.name}.jar"/>
67-
<arg value="--main-class"/><arg value="${main.class}"/>
68-
<arg value="--type"/><arg value="dmg"/>
69-
<arg value="--icon"/><arg value="${icon.file}"/>
70-
<arg value="--app-version"/><arg value="${app.version}"/>
71-
</exec>
60+
<target name="dmg" depends="jar" if="isMac" description="[Mac Only] Builds the .dmg installer">
61+
<mkdir dir="${dist.dir}"/>
62+
<exec executable="jpackage" failonerror="true">
63+
<arg value="--input"/><arg value="${jar.dir}"/>
64+
<arg value="--dest"/><arg value="${dist.dir}"/>
65+
<arg value="--name"/><arg value="${app.name}"/>
66+
<arg value="--main-jar"/><arg value="${app.name}.jar"/>
67+
<arg value="--main-class"/><arg value="${main.class}"/>
68+
<arg value="--type"/><arg value="dmg"/>
69+
<arg value="--icon"/><arg value="${icon.file}"/>
70+
<arg value="--app-version"/><arg value="${app.version}"/>
71+
72+
<arg value="--mac-package-name"/><arg value="${app.name}"/>
73+
<arg value="--mac-package-identifier"/><arg value="com.example.${app.name}"/>
74+
</exec>
7275

73-
<move tofile="${dist.dir}/${app.name}-Installer.dmg">
74-
<fileset dir="${dist.dir}">
75-
<include name="${app.name}*.dmg"/>
76-
<exclude name="${app.name}-Installer.dmg"/>
77-
</fileset>
78-
</move>
79-
<echo message="Success! MacOS Installer: ${dist.dir}/${app.name}-Installer.dmg"/>
80-
</target>
76+
<move todir="${dist.dir}">
77+
<fileset dir="${dist.dir}">
78+
<include name="${app.name}*.dmg"/>
79+
<exclude name="${app.name}-Installer.dmg"/>
80+
</fileset>
81+
<mapper type="merge" to="${app.name}-Installer.dmg"/>
82+
</move>
8183

82-
<target name="debian" depends="jar" if="isLinux" description="[Linux Only] Builds the .deb package">
83-
<mkdir dir="${dist.dir}"/>
84-
<exec executable="jpackage" failonerror="true">
85-
<arg value="--input"/><arg value="${jar.dir}"/>
86-
<arg value="--dest"/><arg value="${dist.dir}"/>
87-
<arg value="--name"/><arg value="${app.name}"/>
88-
<arg value="--main-jar"/><arg value="${app.name}.jar"/>
89-
<arg value="--main-class"/><arg value="${main.class}"/>
90-
<arg value="--type"/><arg value="deb"/>
91-
<arg value="--icon"/><arg value="${icon.file}"/>
92-
<arg value="--app-version"/><arg value="${app.version}"/>
93-
<arg value="--linux-shortcut"/>
94-
</exec>
95-
<move todir="${dist.dir}">
96-
<fileset dir="${dist.dir}">
97-
<include name="${app.name}*.deb"/>
98-
<exclude name="${app.name}-Linux.deb"/>
99-
</fileset>
100-
<mapper type="merge" to="${app.name}-Linux.deb"/>
101-
</move>
84+
<echo message="Success! MacOS Installer: ${dist.dir}/${app.name}-Installer.dmg"/>
85+
</target>
86+
87+
<target name="debian" depends="jar" if="isLinux" description="[Linux Only] Builds the .deb package">
88+
<mkdir dir="${dist.dir}"/>
89+
<exec executable="jpackage" failonerror="true">
90+
<arg value="--input"/><arg value="${jar.dir}"/>
91+
<arg value="--dest"/><arg value="${dist.dir}"/>
92+
<arg value="--name"/><arg value="${app.name}"/>
93+
<arg value="--main-jar"/><arg value="${app.name}.jar"/>
94+
<arg value="--main-class"/><arg value="${main.class}"/>
95+
<arg value="--type"/><arg value="deb"/>
96+
<arg value="--icon"/><arg value="${icon.file}"/>
97+
<arg value="--app-version"/><arg value="${app.version}"/>
98+
<arg value="--linux-shortcut"/>
99+
</exec>
100+
<move todir="${dist.dir}">
101+
<fileset dir="${dist.dir}">
102+
<include name="${app.name}*.deb"/>
103+
<exclude name="${app.name}-Linux.deb"/>
104+
</fileset>
105+
<mapper type="merge" to="${app.name}-Linux.deb"/>
106+
</move>
102107
<echo message="Success! Debian Package: ${dist.dir}/${app.name}-Linux.deb"/>
103-
</target>
108+
</target>
104109

105110
</project>

0 commit comments

Comments
 (0)