1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
---|
2 | <html>
|
---|
3 | <head>
|
---|
4 | <title>Ant Installer</title>
|
---|
5 | <link href="style.css" type="text/css" rel="stylesheet">
|
---|
6 | <link href="css/nav.css" rel="stylesheet" type="text/css">
|
---|
7 | <link rel="SHORTCUT ICON" type="image/png" href="images/antinstaller-icon.png">
|
---|
8 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
---|
9 | <meta name="keywords"
|
---|
10 | content="Ant, installer, AntInstall, gui, console, input, parameters, properties, swing, user interface, validation, configuration">
|
---|
11 | <script type="text/javascript" src="js/menu.js"></script>
|
---|
12 | <script type="text/javascript" src="js/sstree.js"></script>
|
---|
13 | <script type="text/javascript" src="js/winfix.js"></script>
|
---|
14 | </head>
|
---|
15 | <body onload="collapseAll('contents-panel', ['ol']); "><div id="tpallcontent">
|
---|
16 | <table cellspacing="0" width="100%">
|
---|
17 | <tbody>
|
---|
18 | <tr class="tpheader">
|
---|
19 | <th class="tpleft">
|
---|
20 | <a target="_top" href="index.html" title="home"><img src="images/ant-install-small.png" alt="AntInstaller" id="logo" width="76" height="50"/></a>
|
---|
21 | <script type="text/javascript">winFix();</script>
|
---|
22 | </th>
|
---|
23 | <th class="tptop" valign="bottom">
|
---|
24 | <img src="space.gif" height="1" width="440" alt="spacer"/><br/>
|
---|
25 |
|
---|
26 | <table>
|
---|
27 | <tr>
|
---|
28 | <td valign="top">
|
---|
29 | <div class="tpheadertitle">AntInstaller</div>
|
---|
30 | <!--img src="images/ant-install-title.png" alt="AntInstaller"/-->
|
---|
31 | </td>
|
---|
32 | <td width="100%" align="right" valign="bottom" nowrap="NOWRAP">
|
---|
33 | <div class="tpraised">
|
---|
34 | <a class="tpbutton" target="_top" href="index.html">home</a>
|
---|
35 | <a class="tpbutton" target="_top" href="http://sourceforge.net/project/showfiles.php?group_id=123466&package_id=134917">download</a>
|
---|
36 | <a class="tpbutton" target="_top" href="http://sf.net">sourceforge</a>
|
---|
37 | <a class="tpbutton" target="_top" href="manual-ant.html">antmanual</a>
|
---|
38 | <a class="tpbutton" target="_top" href="http://sourceforge.net/tracker/?group_id=123466&atid=696615">RFEs</a>
|
---|
39 | <a class="tpbutton" target="_top" href="http://sourceforge.net/tracker/?group_id=123466&atid=696612">Bugs</a></div>
|
---|
40 | </td>
|
---|
41 | </tr>
|
---|
42 | </table>
|
---|
43 | </th>
|
---|
44 | </tr>
|
---|
45 | <tr class="tpbody">
|
---|
46 | <td class="tpleft" valign="bottom">
|
---|
47 | <br/>
|
---|
48 | <div id="logoset">
|
---|
49 | <a target="_top" href="http://sourceforge.net"><img src="http://sourceforge.net/sflogo.php?group_id=123466&type=2" alt="SourceForge.net Logo" border="0" height="37" width="125"></a>
|
---|
50 | <br/><br/>
|
---|
51 | <a target="_top" href="http://sourceforge.net/donate/index.php?group_id=123466">
|
---|
52 | <img src="http://sourceforge.net/images/project-support.jpg" alt="donate to AntInstaller"/>
|
---|
53 | </a>
|
---|
54 | </div>
|
---|
55 | </td>
|
---|
56 | <td class="tpright" valign="top">
|
---|
57 | <div class="tpcontent">
|
---|
58 | <!--[segment-content] page content start -->
|
---|
59 | <h2>Classpath / Resource issues</h2>
|
---|
60 |
|
---|
61 | <h3>Self-Extracting Jar</h3>
|
---|
62 | AntInstall supports delivering the installation package as a self extracting
|
---|
63 | Jar. In Windows if the Java installer from Sun has
|
---|
64 | been used and the default application for files that end in <code>.jar</code> has not been changed, double clicking
|
---|
65 | on the Jar will launch the installer. To launch from the command line type<br/>
|
---|
66 | <code>> java -jar [installer_name].jar</code> <br/><br/>
|
---|
67 |
|
---|
68 | If all classes are packaged in a single Jar everything is on the same classpath, this is useful for almost all situations.
|
---|
69 | However, if your installer absolutely requires separate classpaths, for example if custom tasks have clashing dependencies, the classpath must be defined as it would in a normal Ant build. To achieve this you will have to package the Jars in a self-extractor or, for the non-extractor, extract the Jars to temporary space first.<br/><br/>
|
---|
70 |
|
---|
71 | If delivering an installer on a CDROM there is no need to package the installer
|
---|
72 | as a single Jar. In which case the following applies. <br/>
|
---|
73 | <h3>Install Scripts</h3>
|
---|
74 | <b>For Linux installations.</b><br/>
|
---|
75 | It is recommended to tar and gzip the components with the <code>install.sh</code>(with
|
---|
76 | execute permissions) script in the root of the archive. The user should
|
---|
77 | the run (or double click on) the script after uncompressing the archive
|
---|
78 | to a temporary directory. This is a generally understood method, for
|
---|
79 | Linux it is tipical to include a README or INSTALL file with simple
|
---|
80 | instructions i.e. "run the install script and follow instructions". Also
|
---|
81 | creating a copy of the script and calling it <code>./configure</code>
|
---|
82 | will help users used to installing with <code>./configure;make;make
|
---|
83 | install</code> who don't read your documents. <br/>
|
---|
84 | <br/>
|
---|
85 | <b>For Window$ installations.</b><br/>
|
---|
86 | For windows installations it is better to use the ZIP compression format. The demo app includes
|
---|
87 | an example of a windows start script (<code>install.cmd</code>) that will set the classpath for the installer.<br/>
|
---|
88 | <br/>
|
---|
89 | <b>Java required.</b><br/>
|
---|
90 | Currently both example install scripts rely on a system property called
|
---|
91 | %JAVA_HOME% since this is standard for most Java deployments. If this
|
---|
92 | is a problem get in touch and I can write some scripts to check
|
---|
93 | standard locations for the Java binary. It is also possible to deliver
|
---|
94 | Java with your app, but you will need to check with the Sun licenses as
|
---|
95 | to weather this is permitted or not, and users will have a heafty
|
---|
96 | download.<br/>
|
---|
97 | It may be better to specify the Java command as just <code>java</code> or <code>javaw</code> for windows since Sun ahs made some headway ensuring that if installed the binary can be specified without the need for the full path.
|
---|
98 |
|
---|
99 | <br/>
|
---|
100 | <h3>Classpath</h3>
|
---|
101 | The developer creating the installer should ensure that all references in the install script
|
---|
102 | are correct when the script is run. In the AntInstall demo the <code>install.sh</code>
|
---|
103 | is slightly different to the <code>install.sh</code> in the root
|
---|
104 | directory since the libs required are in a different directory. Ensure
|
---|
105 | your classpath is correct also ensure that during testing you are not
|
---|
106 | useing a default Ant installed on your machine and that you bundle Ant
|
---|
107 | 1.6 with the installation and all the requried Ant task libs.<br/>
|
---|
108 | It is currently possible to include a directory called <code>antlib</code>
|
---|
109 | this will be passed to the Ant launcher with the normal ant <code>-lib</code>
|
---|
110 | parameter. <br/>
|
---|
111 | With self extracting jars all classes should be packaged in the root of the Jar file.<br/>
|
---|
112 |
|
---|
113 | <h3>Resources</h3>
|
---|
114 | A further classpath consideration is the location of the images for the
|
---|
115 | GUI. They must be on the classpath when the AntInstaller runs in the <code>/resources/</code>
|
---|
116 | path. This can be achieved by creating a directory <code>./lib/resources</code>
|
---|
117 | and adding <code>./lib</code> to the classpath for scripted installs. Alternatively the
|
---|
118 | files can be added to a Jar file in the resources path inside the Jar for self-extractor and non-extractor builds.
|
---|
119 | The installer will not fail if the resources are not available but the correct images will not be
|
---|
120 | shown.
|
---|
121 | Some missing resources such as the license file for a license page will fail if the resource is not available.<br/><br/>
|
---|
122 |
|
---|
123 | <h3>Java version</h3>
|
---|
124 | The required Java version is 1.4 or above. It may be possible to get AI working on 1.3 provided that the JGoodies look and feel is NOT used and regular expressions are not used. Also the XML parsers and APIs will have to be added to the classpath.<br/> If regex and 1.3 are a requriement of yours, it is possible to hack the code to use the Apache regex parser included with Ant. There have been problems with this code and so it is not included by default. Please get in contact if you would like to work on this feature.
|
---|
125 |
|
---|
126 | <!-- content end [segment-end]-->
|
---|
127 | </div>
|
---|
128 | </td>
|
---|
129 | </tr>
|
---|
130 | </tbody>
|
---|
131 | </table>
|
---|
132 | <div id="contents-panel">
|
---|
133 | <!--[segment-file://contents-include.html] menu start -->
|
---|
134 | <div id="contents-menu">
|
---|
135 | <ol class="sidebar" id="root">
|
---|
136 | <li class="panel"><a href="#default" class="folder" onclick="toggle(this)"></a><b>Site map</b>
|
---|
137 | <ol>
|
---|
138 | <li class="sidebar"><a href="introduction.html">Introduction</a></li>
|
---|
139 | <li class="panel"><a href="#default" class="folder" onclick="toggle(this)"></a><b>Developer References</b>
|
---|
140 | <ol>
|
---|
141 | <li class="sidebar"><a href="quickstart.html">Quick Start</a></li>
|
---|
142 | <li class="panel"><a href="#default" class="folder" onclick="toggle(this)"></a><a href="manual.html">Manual</a>
|
---|
143 | <ol class="init-hidden">
|
---|
144 | <li class="sidebar"><a href="manual.html#config">antinstall-config.xml</a></li>
|
---|
145 | <li class="panel"><a href="#default" class="folder" onclick="toggle(this)"></a><a href="manual.html#page">Pages</a>
|
---|
146 | <ol class="init-hidden">
|
---|
147 | <li class="sidebar"><a href="manual.html#pagesplash">Splash Page</a></li>
|
---|
148 | <li class="sidebar"><a href="manual.html#pagetext">Text Page</a></li>
|
---|
149 | <li class="sidebar"><a href="manual.html#pagelicense">License Page</a></li>
|
---|
150 | <li class="sidebar"><a href="manual.html#pageinput">Input Page</a></li>
|
---|
151 | <li class="sidebar"><a href="manual.html#pageprogress">Progress Page</a></li>
|
---|
152 | </ol>
|
---|
153 | </li>
|
---|
154 | <li class="panel"><a href="#default" class="folder" onclick="toggle(this)"></a><a href="manual.html#inputtypes">Input types</a>
|
---|
155 | <ol class="init-hidden">
|
---|
156 | <li class="sidebar"><a href="manual.html#app-root">Application Root</a></li>
|
---|
157 | <li class="sidebar"><a href="manual.html#checkbox">Checkbox</a></li>
|
---|
158 | <li class="sidebar"><a href="manual.html#comment">Comment</a></li>
|
---|
159 | <li class="sidebar"><a href="manual.html#date">Date</a></li>
|
---|
160 | <li class="sidebar"><a href="manual.html#directory">Directory</a></li>
|
---|
161 | <li class="sidebar"><a href="manual.html#file">File</a></li>
|
---|
162 | <li class="sidebar"><a href="manual.html#large-select">Large Select</a></li>
|
---|
163 | <li class="sidebar"><a href="manual.html#password">Password Text</a></li>
|
---|
164 | <li class="sidebar"><a href="manual.html#password-confirm">Confirm Password</a></li>
|
---|
165 | <li class="sidebar"><a href="manual.html#select">Select</a></li>
|
---|
166 | <li class="sidebar"><a href="manual.html#target">Target</a></li>
|
---|
167 | <li class="sidebar"><a href="manual.html#target-select">Target Select</a></li>
|
---|
168 | <li class="sidebar"><a href="manual.html#text">Unvalidated Text</a></li>
|
---|
169 | <li class="sidebar"><a href="manual.html#validated">Validated Text</a></li>
|
---|
170 | <li class="sidebar"><a href="manual.html#extvalidated">Externally Validated Text</a></li>
|
---|
171 | </ol>
|
---|
172 | </li>
|
---|
173 | <li class="sidebar"><a href="manual.html#extractor">Self Extractor</a></li>
|
---|
174 | <li class="sidebar"><a href="manual.html#non-extractor">Non Extractor</a></li>
|
---|
175 | <li class="sidebar"><a href="manual.html#scripts">Start Scripts</a></li>
|
---|
176 | <li class="sidebar"><a href="manual.html#refs">Dynamic References</a></li>
|
---|
177 | <li class="sidebar"><a href="manual.html#pagedisplay">Page Displaying</a></li>
|
---|
178 | </ol>
|
---|
179 | </li>
|
---|
180 | <li class="sidebar"><a href="installertask.html">Installer Ant task</a></li>
|
---|
181 | <li class="sidebar"><a href="validationofconfig.html">Validation of config</a></li>
|
---|
182 | <li class="sidebar"><a href="lookandfeels.html">LookAndFeels</a> <br/>(inc screenshots)</li>
|
---|
183 | <li class="sidebar"><a href="classpathresources.html">Resources/Classpath issues</a></li>
|
---|
184 | <li class="sidebar"><a href="i18n.html">Internationalisation</a></li>
|
---|
185 | <li class="sidebar"><a href="auto.html">Automated installs</a></li>
|
---|
186 | <li class="sidebar"><a href="installtypes.html">Multiple install types</a></li>
|
---|
187 | <li class="sidebar"><a href="posttargets.html">Post display targets</a></li>
|
---|
188 | <li class="sidebar"><a href="icons.html">Button Icons</a></li>
|
---|
189 | <li class="sidebar"><a href="antinstall-config-example.html">Example antinstall-config.xml</a></li>
|
---|
190 | </ol>
|
---|
191 | </li>
|
---|
192 | <li class="sidebar"><a href="manual-ant.html">Ant Manual</a></li>
|
---|
193 | <li class="sidebar"><a href="antlinks.html">Ant links</a></li>
|
---|
194 | <li class="sidebar"><a href="userusage.html">User usage</a></li>
|
---|
195 | <li class="sidebar"><a href="licenses.html">Licenses</a></li>
|
---|
196 | <li class="sidebar"><a href="potentialuses.html">Potential uses</a></li>
|
---|
197 | <li class="sidebar"><a href="roadmap.html">Road Map</a></li>
|
---|
198 | <li class="sidebar"><a href="wanted.html">Wanted</a></li>
|
---|
199 | <li class="sidebar"><a href="dtds.html">DTDs</a></li>
|
---|
200 | <li class="sidebar"><a href="changelog.html">Changelog</a></li>
|
---|
201 | <li class="sidebar"><a href="http://sourceforge.net/projects/antinstaller">Project page on SourceForge</a></li>
|
---|
202 | <li class="sidebar"><a href="java2html/antinstaller/index.html">Java2HTML (main)</a></li>
|
---|
203 | <li class="sidebar"><a href="java2html/ext/index.html">Java2HTML (extensions)</a></li>
|
---|
204 | <li class="sidebar"><a href="http://antinstaller.cvs.sourceforge.net/antinstaller">Public CVS over HTTP</a></li>
|
---|
205 | <li class="sidebar"><a href="http://sourceforge.net/sendmessage.php?touser=616485">Contact AntInstaller Admin</a></li>
|
---|
206 | </ol>
|
---|
207 | </li>
|
---|
208 | </ol>
|
---|
209 | <br/>
|
---|
210 | <br/>
|
---|
211 | </div>
|
---|
212 |
|
---|
213 |
|
---|
214 | <!-- menu end [segment-end]-->
|
---|
215 | </div>
|
---|
216 | <div id="contents-options">
|
---|
217 | <a id="toggle" href="#" onclick="toggleMenu(); return false;">show menu</a>
|
---|
218 | </div>
|
---|
219 |
|
---|
220 | </div>
|
---|
221 | </body>
|
---|
222 | </html>
|
---|