1 <project name="Test" default="package" xmlns:fx="javacom.sun.javafx.tools.ant"> 2 <echo> 3 java_home 4 </echo> 5 <echo> 6 ${java.home} 7 </echo> 8 9 <taskdef resource="com/sun/javafx/tools/ant/antlib.xml" 10 uri="javacom.sun.javafx.tools.ant" 11 classpath="${java.home}/lib/ant-javafx.jar;."/> 12 13 <property name="src.dir" value="src"/> 14 <property name="build.dir" value="build"/> 15 <property name="classes.dir" value="${build.dir}/hello.world"/> 16 <property name="bundles.dir" value="output"/> 17 18 <target name="clean"> 19 <delete dir="${build.dir}"/> 20 <delete dir="${bundles.dir}"/> 21 </target> 22 23 <target name="compile"> 24 <mkdir dir="${build.dir}"/> 25 <mkdir dir="${classes.dir}"/> 26 <javac includeantruntime="false" 27 srcdir="${src.dir}" 28 destdir="${classes.dir}"/> 29 <copy todir="${classes.dir}"> 30 <fileset dir="${src.dir}"> 31 <exclude name="**/*.java"/> 32 </fileset> 33 </copy> 34 </target> 35 36 <target name="jar" depends="compile"> 37 <mkdir dir="${build.dir}/modules"/> 38 <jar destfile="${build.dir}/modules/hello.world.jar" basedir="${build.dir}/hello.world"> 39 <manifest> 40 <attribute name="Main-Class" value="com.greetings.HelloWorld"/> 41 </manifest> 42 </jar> 43 </target> 44 45 <mkdir dir="${bundles.dir}"/> 46 47 <target name="package" depends="jar"> 48 <fx:deploy outdir="${bundles.dir}" 49 outfile="Test" 50 nativeBundles="native" 51 verbose="true" 52 versionCheck="false"> 53 54 <fx:runtime detect-modules="true" strip-native-commands="false"> 55 <fx:add-modules value="java.base"/> 56 <fx:add-modules value="jdk.packager.services,javafx.controls"/> 57 <fx:limit-modules value="java.sql"/> 58 <fx:limit-modules value="jdk.packager.services,javafx.controls"/> 59 <fx:module-path value="${java.home}/../images/jmods"/> 60 <fx:module-path value="${build.dir}/modules"/> 61 </fx:runtime> 62 63 <fx:application id="Test" 64 name="Test" 65 version="1.0" 66 module="hello.world" 67 mainClass="com.greetings.HelloWorld"> 68 </fx:application> 69 70 <!-- Used to include resources --> 71 <!--<resources> 72 <fileset dir="${bundles.dir}" includes="**/*"/> 73 </resources>--> 74 75 <fx:info title="Test" 76 vendor="Oracle" 77 description="Java Packager Demo" 78 category="Test" 79 copyright="(c) 2016 Oracle" 80 license="3 Clause BSD"> 81 </fx:info> 82 83 <fx:bundleArgument arg="win.exe.systemWide" value="true"/> 84 <fx:bundleArgument arg="win.menuGroup" value="Games"/> 85 <fx:bundleArgument arg="mac.dmg.simple" value="true"/> 86 <fx:bundleArgument arg="signBundle" value="false"/> 87 <!-- <fx:bundleArgument arg="linux.bundleName" value="file-association-demo"/> --> 88 <!-- <fx:bundleArgument arg="email" value="maintainer@example.com"/> --> 89 <fx:bundleArgument arg="mac.CFBundleName" value="Test"/> 90 91 <fx:secondaryLauncher name="Test2" 92 module="hello.world" 93 mainClass="com.greetings.HelloWorld"> 94 <!--<fx:jvmuserarg name="-Xmx" value="1g"/>--> 95 </fx:secondaryLauncher> 96 </fx:deploy> 97 </target> 98 99 </project>