Wiki source code of JApplication

Version 28.1 by Andrus Adamchik on 2006/09/30 20:38

Hide last authors
Andrus Adamchik 26.1 1 //(unreleased as of 09/16/2006)//
2
3 == Description ==
4
5 //JApplication// is a task for assembling native launchers of Java applications for a number of target platforms. Currently supports native launchers for Mac and Windows operating systems and also a "java launcher" - a single jar file that can be run via ##"java --jar file.jar"--##--.--
6
7 == OS Strategies ==
8
9 * Java: builds a single runnable jar file out of a collection of jar files.
10 * Mac: builds a XYZ.app bundle that includes all jar dependencies.
11 * Windows: Performs a Java build and creates an [[NSIS>>http://nsis.sourceforge.net/Main_Page]] launcher for the runnable jar. Both ##".exe"## and ##".jar"## files are required to be in the same directory for the launcher to work.
12
13 == Build OS Specifics ==
14
15 * Mac launcher can be built on Mac only, as it requires a JavaApplicationStab file.
16 * Windows launcher can be built on Windows only.
17 * Java launcher can be assembled on any platform and has no prerequisites.
18
19 == Parameters ==
20
21 |=Attribute|=Description|=Required|=Platforms
22 |name|The name of the application without OS-specific extension|yes|
23 |mainClass|Main Java class|yes|
24 |os|A family of operating systems. Currently supported values are "mac", "windows" and "java"|no (will use build machine os if ommitted; if the os is not supported, will use "java")|
25 |destDir|A destination directory where the application launcher should be installed|no (will use ##"$basedir"## if omitted)|
26 |longName|An optional string identifying the application human-readable name. If not specified, "name" is used.|no|
27 |icon|Platform-specific icon file (usually ".ico" on Windows and ".icns" on Mac)|no|mac,windows
28 |jvm|Minimal version of the Java Virtual machine required.|no (default is "1.4+")|mac
29 |jvmOptions|Optional parameters to pass to the JVM, such as memory settings, etc.|no|mac,windows
30 |version|Product version string|no (default 0.0)|mac
31
32 == Nested Elements ==
33
34 === lib ===
35
36 The [[FileSet>>http://ant.apache.org/manual/CoreTypes/fileset.html]] specifying jar files to be included in the application.
37
38 == Examples ==
39
40 Loading task:
41
42 {{noformat}}
43 <taskdef name="japplication" classname="org.objectstyle.woproject.ant.JApplication"/>
44 {{/noformat}}
45
46 Building a Windows application, resulting in "MyApp.exe" launcher that starts "MyApp.jar" file.
47
48 {{noformat}}
49 <japplication name="MyApp" destDir="dist" mainClass="org.example.Main" os="windows">
50 <lib dir="lib" includes="**/*.jar"/>
51 </japplication>
52 {{/noformat}}