Changeset 392
- Timestamp:
- 02/09/10 04:46:27 (6 months ago)
- Location:
- trunk/src/documentation
- Files:
-
- 4 modified
-
changelog.html (modified) (2 diffs)
-
howto/GettingStarted.html (modified) (4 diffs)
-
howto/writePlugins.html (modified) (10 diffs)
-
index.html (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/documentation/changelog.html
r391 r392 29 29 <ul> 30 30 <li>use latest official ant (no more a patched version)</li> 31 <li>refactor an contrib usage, antcontrib is now considered as a dependency of easyant-core</li>32 <li>add the capabilty to override target/phases defined in module.ivy (ov veride.module.ant)</li>31 <li>refactor antcontrib usage, antcontrib is now considered as a dependency of easyant-core</li> 32 <li>add the capabilty to override target/phases defined in module.ivy (override.module.ant)</li> 33 33 <li>enhanced multimodule support 34 34 <ul> 35 <li>full support for all standard build phases</li> 36 <li>full support for Ivy descriptor "extends"</li> 35 37 <li>build-scoped repository should allow overwrites (#74)</li> 36 38 <li>meta-build: better support for custom ivysettings.xml (#75)</li> 37 <li>TODO : NEW FEATURES</li>38 39 </ul> 39 40 </li> … … 41 42 <li>use cache by default instead of retrieving in lib directory</li> 42 43 <li>simplify version management : uses revision attribute in module.ivy instead of a specific property (#81)</li> 43 <li>simplify syntax of easyant tags, plugins/buildtypes now support two way to be imported (#84):44 <li>simplify syntax of easyant tags, plugins/buildtypes now support two ways to be imported (#84): 44 45 <ul> 45 46 <li>using mrid <code type="xml"><plugin mrid="org.apache.easyant.plugins#run-java;0.1"/></code></li> -
trunk/src/documentation/howto/GettingStarted.html
r385 r392 67 67 <p /> 68 68 This file is the module descriptor of your project. 69 It contains several informationslike your company name, the module name, dependencies, and Easyant build information.69 It contains information like your company name, the module name, dependencies, and Easyant build information. 70 70 71 71 <h3>A short example</h3> … … 90 90 Pay attention to the <ea:build> tag. 91 91 This tags define which build-type is used for your project. In this example we use <b>build-std-java</b> which provides all the targets necessary to compile / package a standard java application. 92 <div id="note">Note: The organisation argument in <b>ea:build</b> tag is option nal. If not specified easyant will use the default one (org.apache.easyant.buildtypes).</div>92 <div id="note">Note: The organisation argument in <b>ea:build</b> tag is optional. If not specified easyant will use the default one (org.apache.easyant.buildtypes).</div> 93 93 94 94 Running easyant with this example will run the default target (package). … … 123 123 </code> 124 124 As you can see the target is prefixed by the project name. 125 Most of the time the project name is quite long so easyant allows you to define a aliases for the project names. Such an alias can be used in place of the complete project name. You can define an alias for a plugin using "as" argument as below.125 Most of the time the project name is quite long so easyant allows you to define aliases for the project names. Such an alias can be used in place of the complete project name. You can define an alias for a plugin using "as" argument as below. 126 126 <code type="xml"> 127 127 <ea:build organisation="org.apache.easyant.buildtypes" module="build-std-java" revision="0.2"/> … … 132 132 Calling to "easyant -p" we should see the emma public target : 133 133 <code type="xml"> 134 emma .:emma generate emma covera report134 emma:emma generate emma covera report 135 135 </code> 136 <div id="note">Note: The organisation argument in <b>ea:plugin</b> tag is option nal. If not specified easyant will use the default one (org.apache.easyant.plugins).</div>136 <div id="note">Note: The organisation argument in <b>ea:plugin</b> tag is optional. If not specified easyant will use the default one (org.apache.easyant.plugins).</div> 137 137 138 138 <h3>Going further ?</h3> 139 If you want more information swe strongly recommend you to read the <a href="../ref/Modulefiles.html">Module files documentation</a></textarea>139 If you want more information we strongly recommend you to read the <a href="../ref/Modulefiles.html">Module files documentation</a></textarea> 140 140 <script type="text/javascript">xooki.postProcess();</script> 141 141 </body> -
trunk/src/documentation/howto/writePlugins.html
r354 r392 145 145 <ul> 146 146 <li>phases on which it relies</li> 147 <li>parameters (properties, resource collections, paths) , with for each if it is required or not,default value.</li>147 <li>parameters (properties, resource collections, paths). For each parameter specify name, description, whether it is required, and optionally a default value.</li> 148 148 <li>expected environment (files in a directory, a server up and running, ...)</li> 149 149 <li>results produced</li> … … 198 198 <h3>Adding additional files to your module</h3> 199 199 Sometimes, we need to have a .properties files related to a given plugin. 200 Sometimes it could be an additional file ( Example a.xsl file for example).200 Sometimes it could be an additional file (an .xsl file for example). 201 201 202 202 Before using it we must declare the new file in the plugin module descriptor. … … 223 223 </ivy-module> 224 224 </code> 225 Here we defined that our plugin is composed by3 files :225 Here we defined that our plugin is composed of 3 files : 226 226 <ul> 227 227 <li>myplugin.ant (if name argument is not specified the module name will be used)</li> … … 231 231 232 232 Now we will see how we can use those files in our plugin script. 233 Considering that a plugin must be generic and can be retrieved from different repository (filesystem, url, ftp, etc...) we should take care of how we reference those additional file in our script.233 Considering that a plugin must be generic and can be retrieved from different repository (filesystem, url, ftp, etc...) we should take care of how we reference those additional files in our script. 234 234 To avoid any problems due to repository layout configuration, easyant gives you gives you access to properties containing the absolute path of a declared artifact. Those properties are composed with the following syntax : 235 235 <code type="xml"> … … 241 241 </code> 242 242 243 The '.artifact' is option nal when module name and artifact name are the same.243 The '.artifact' is optional when module name and artifact name are the same. 244 244 <code type="xml"> 245 245 [organisation].[module].[type].file … … 287 287 </ivy-module> 288 288 </code> 289 Here we depend son amazingAntTask and myOtherAntTask provided by foobar organisation.289 Here we depend on amazingAntTask and myOtherAntTask provided by foobar organisation. 290 290 <h4>Using dependency in your plugin ant script?</h4> 291 Easyant automatically creates a classpath specific for each plugin s, this classpath contains all the <i>.jars</i> contained in dependencies.292 293 The name of theclasspath is named291 Easyant automatically creates a classpath specific for each plugin, this classpath contains all the required dependency <i>.jars</i>. 292 293 The classpath is named 294 294 <code tyep="xml"> 295 295 [organisation]#[module].classpath … … 354 354 <import file="../../main/resources/myplugin.ant"/> 355 355 356 <!-- Defines a setUp / tearDown (before each test) that cleans the environ nement -->356 <!-- Defines a setUp / tearDown (before each test) that cleans the environment --> 357 357 <target name="clean" description="remove stale build artifacts before / after each test"> 358 358 <delete dir="${basedir}" includeemptydirs="true"> … … 373 373 </project> 374 374 </code> 375 Considering that our plugin relies to externalphase (validate in our example) we must mock it in our test.375 Considering that our plugin relies on an externally defined phase (validate in our example) we must mock it in our test. 376 376 Then we : 377 377 <ul> … … 381 381 </ul> 382 382 383 All target prefixed by "test" will be executed as a test case (similar to junit 3 behavior).383 All targets prefixed by "test" will be executed as a test case (similar to junit 3 behavior). 384 384 385 385 Now we will write a test case for our ":helloworld" target. … … 391 391 </code> 392 392 393 Test can be executed whenrunning :393 Tests can be executed by running : 394 394 <code type="shell">> easyant test</code> 395 395 -
trunk/src/documentation/index.html
r390 r392 35 35 If you are browsing this documentation from your installation of EasyAnt, you can also check the <a href="http://www.easyant.org/doc/">online version</a> for latest updates. 36 36 37 You can also browse this documentation offline either by downloading the documentation distribution, or by checking out the src/documentation directory from svn. This documentation uses xooki as documentation engine, so you can very easily edit it and submit patches ?when you browse it from source.</textarea>37 You can also browse this documentation offline either by downloading the documentation distribution, or by checking out the src/documentation directory from svn. This documentation uses xooki as documentation engine, so you can very easily edit it and submit patches when you browse it from source.</textarea> 38 38 <script type="text/javascript">xooki.postProcess();</script> 39 39 </body>