Wiki source code of JApplication
Last modified by Andrus Adamchik on 2006/12/10 12:40
Hide last authors
| author | version | line-number | content |
|---|---|---|---|
| |
26.1 | 1 | == Description == |
| 2 | |||
| |
81.1 | 3 | //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 {{code language="none"}}"java -jar file.jar"{{/code}}. |
| |
26.1 | 4 | |
| |
70.1 | 5 | == OS Strategies == |
| 6 | |||
| 7 | * Java: builds a single runnable jar file out of a collection of jar files. | ||
| 8 | * Mac: builds a XYZ.app bundle that includes all jar dependencies. | ||
| |
81.1 | 9 | * Windows: Performs a Java build and creates an [[NSIS>>url:http://nsis.sourceforge.net/Main_Page||shape="rect"]] launcher for the runnable jar. Both {{code language="none"}}".exe"{{/code}} and {{code language="none"}}".jar"{{/code}} files are required to be in the same directory for the launcher to work. |
| |
70.1 | 10 | |
| |
80.1 | 11 | == OS Requirements == |
| |
26.1 | 12 | |
| |
80.1 | 13 | * Mac launcher can be built on Mac only, as it requires a JavaApplicationStab file. |
| 14 | * Windows launcher can be built on Windows only. | ||
| |
46.1 | 15 | * Java launcher can be assembled on any platform and has no prerequisites. |
| |
26.1 | 16 | |
| 17 | == Parameters == | ||
| |
46.1 | 18 | |
| |
81.1 | 19 | |=((( |
| 20 | Attribute | ||
| 21 | )))|=((( | ||
| 22 | Description | ||
| 23 | )))|=((( | ||
| 24 | Required | ||
| 25 | )))|=((( | ||
| 26 | Platforms | ||
| 27 | ))) | ||
| 28 | |((( | ||
| 29 | name | ||
| 30 | )))|((( | ||
| 31 | The name of the application without OS-specific extension | ||
| 32 | )))|((( | ||
| 33 | yes | ||
| 34 | )))|((( | ||
| 35 | |||
| 36 | ))) | ||
| 37 | |((( | ||
| 38 | mainClass | ||
| 39 | )))|((( | ||
| 40 | Main Java class | ||
| 41 | )))|((( | ||
| 42 | yes | ||
| 43 | )))|((( | ||
| 44 | |||
| 45 | ))) | ||
| 46 | |((( | ||
| 47 | os | ||
| 48 | )))|((( | ||
| 49 | A family of operating systems. Currently supported values are "mac", "windows" and "java" | ||
| 50 | )))|((( | ||
| 51 | no (will use build machine os if ommitted; if the os is not supported, will use "java") | ||
| 52 | )))|((( | ||
| 53 | |||
| 54 | ))) | ||
| 55 | |((( | ||
| 56 | destDir | ||
| 57 | )))|((( | ||
| 58 | A destination directory where the application launcher should be installed | ||
| 59 | )))|((( | ||
| 60 | no (will use {{code language="none"}}"${basedir}"{{/code}} if omitted) | ||
| 61 | )))|((( | ||
| 62 | |||
| 63 | ))) | ||
| 64 | |((( | ||
| 65 | longName | ||
| 66 | )))|((( | ||
| 67 | An optional string identifying the application human-readable name. If not specified, "name" is used. | ||
| 68 | )))|((( | ||
| 69 | no | ||
| 70 | )))|((( | ||
| 71 | |||
| 72 | ))) | ||
| 73 | |((( | ||
| 74 | icon | ||
| 75 | )))|((( | ||
| 76 | Platform-specific icon file (usually "*.ico" on Windows and "*.icns" on Mac) | ||
| 77 | )))|((( | ||
| 78 | no | ||
| 79 | )))|((( | ||
| 80 | mac,windows | ||
| 81 | ))) | ||
| 82 | |((( | ||
| 83 | jvm | ||
| 84 | )))|((( | ||
| 85 | Minimal version of the Java Virtual machine required. | ||
| 86 | )))|((( | ||
| 87 | no (default is "1.4+") | ||
| 88 | )))|((( | ||
| 89 | mac | ||
| 90 | ))) | ||
| 91 | |((( | ||
| 92 | jvmOptions | ||
| 93 | )))|((( | ||
| 94 | Optional parameters to pass to the JVM, such as memory settings, etc. | ||
| 95 | )))|((( | ||
| 96 | no | ||
| 97 | )))|((( | ||
| 98 | mac,windows | ||
| 99 | ))) | ||
| 100 | |((( | ||
| 101 | version | ||
| 102 | )))|((( | ||
| 103 | Product version string | ||
| 104 | )))|((( | ||
| 105 | no (default 0.0) | ||
| 106 | )))|((( | ||
| 107 | mac | ||
| 108 | ))) | ||
| |
46.1 | 109 | |
| 110 | == Nested Elements == | ||
| 111 | |||
| 112 | === lib === | ||
| 113 | |||
| |
81.1 | 114 | The [[FileSet>>url:http://ant.apache.org/manual/CoreTypes/fileset.html||shape="rect"]] specifying jar files to be included in the application. |
| |
54.1 | 115 | |
| 116 | == Examples == | ||
| 117 | |||
| 118 | Loading task: | ||
| 119 | |||
| 120 | {{noformat}} | ||
| 121 | <taskdef name="japplication" classname="org.objectstyle.woproject.ant.JApplication"/> | ||
| 122 | {{/noformat}} | ||
| 123 | |||
| 124 | Building a Windows application, resulting in "MyApp.exe" launcher that starts "MyApp.jar" file. | ||
| 125 | |||
| 126 | {{noformat}} | ||
| 127 | <japplication name="MyApp" destDir="dist" mainClass="org.example.Main" os="windows"> | ||
| |
68.1 | 128 | <lib dir="lib" includes="**/*.jar"/> |
| |
54.1 | 129 | </japplication> |
| 130 | {{/noformat}} |