You are viewing a plain text version of this content. The canonical link for it is here.
Posted to easyant-commits@incubator.apache.org by jl...@apache.org on 2012/10/02 17:14:47 UTC
svn commit: r1393039 - in /incubator/easyant/core/trunk/src/documentation:
ref/Defaultlifecycle.html ref/Modulefiles.html ref/ProjectMancommand.html
ref/buildtypes/buildtypes.html ref/plugins/plugins.html reference.html
Author: jlboudart
Date: Tue Oct 2 17:14:46 2012
New Revision: 1393039
URL: http://svn.apache.org/viewvc?rev=1393039&view=rev
Log:
Update documentation
fix various broken links and unnecessary paragraphs
Modified:
incubator/easyant/core/trunk/src/documentation/ref/Defaultlifecycle.html
incubator/easyant/core/trunk/src/documentation/ref/Modulefiles.html
incubator/easyant/core/trunk/src/documentation/ref/ProjectMancommand.html
incubator/easyant/core/trunk/src/documentation/ref/buildtypes/buildtypes.html
incubator/easyant/core/trunk/src/documentation/ref/plugins/plugins.html
incubator/easyant/core/trunk/src/documentation/reference.html
Modified: incubator/easyant/core/trunk/src/documentation/ref/Defaultlifecycle.html
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/documentation/ref/Defaultlifecycle.html?rev=1393039&r1=1393038&r2=1393039&view=diff
==============================================================================
--- incubator/easyant/core/trunk/src/documentation/ref/Defaultlifecycle.html (original)
+++ incubator/easyant/core/trunk/src/documentation/ref/Defaultlifecycle.html Tue Oct 2 17:14:46 2012
@@ -25,7 +25,7 @@
<textarea id="xooki-source">
<h1>Default lifecycle</h1>
-EasyAnt cames with a default lifecycle. This default lifecycle is a set of predefined <a href="ExtensionPoint.html">extension points</a> for the common needs.
+EasyAnt cames with a default lifecycle. This default lifecycle is a set of predefined <a href="ExtensionPoint.html">extension points</a> for the common needs.
Each phase is considered as an essential step of the build process.
<div id="note">
@@ -34,7 +34,19 @@ Note : Even if EasyAnt provides you a de
Here is a graphical representation of the default lifecycle.
-<img src="../images/defaultLifecycle.jpg"/></textarea>
+<img src="../images/defaultLifecycle.jpg"/>
+
+<p>
+Standard <a href="buildtypes/buildtypes.html">build types</a> import the default lifecycle. It's buildtype responsability to wire plugins on the default lifecycle.
+
+Users can bind or rebind targets on it. This can be achieved with <a href="anttasks/BindTarget.html">bindtarget ant task</a>.
+</p>
+
+<p>
+Plugins can provides additionnal <a href="ExtensionPoint.html">extension points</a>. Plugins typically add low-level tasks to one or more extension-points. For example, a plugin can contribute to processing sources before compilation, you will in that case plug your own target to "abstract-compile:compile-ready" extension-point". This contributes to have a dynamic lifecycle.
+
+Default lifecycle is here to bring conventions through high level targets. It ease to memorize common steps.
+</p></textarea>
<script type="text/javascript">xooki.postProcess();</script>
</body>
</html>
Modified: incubator/easyant/core/trunk/src/documentation/ref/Modulefiles.html
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/documentation/ref/Modulefiles.html?rev=1393039&r1=1393038&r2=1393039&view=diff
==============================================================================
--- incubator/easyant/core/trunk/src/documentation/ref/Modulefiles.html (original)
+++ incubator/easyant/core/trunk/src/documentation/ref/Modulefiles.html Tue Oct 2 17:14:46 2012
@@ -190,36 +190,41 @@ Running a easyant -p should display our
Considering that all the phases provided <b>build-std-java</b> are loaded before the module.ant, you can attach your custom target to any phase.
This complete the basic needs.
-<h2>Going further : overriding target / phases</h2>
-Let's consider the use case were you want to adapt a specific target or phase to your need.
+<h2>Going further : overriding target / extension-point</h2>
+Let's consider the use case were you want to adapt a specific target or extension-point to your need.
We need to keep in mind that ant-based system works with a useFirst mechanism.
Which means :
<ul>
<li>properties are set only first time we use it</li>
- <li>target / phase are set first time we use it</li>
+ <li>target / extension-point are set first time we use it</li>
</ul>
But the choregraphy is to load :
- * the module.ivy
- * the module.ant
+<ul>
+ <li>the module.ivy</li>
+ <li>the module.ant</li>
+</ul>
+
+This means that you're not able to override target/extension-point in the module.ant.
-This means that you're not able to override target/phases in the module.ant.
Fortunately EasyAnt provides a way to do it.
The real choregraphy is to load :
- * the override.module.ant
- * the module.ivy
- * the module.ant
+<ul>
+ <li>the override.module.ant</li>
+ <li>the module.ivy</li>
+ <li>the module.ant</li>
+</ul>
-The <b>override.module.ant</b> is a true ant script loaded before the module.ivy. It's the right place if you want to override target/phases provided by things defined later in module.ivy.
+The <b>override.module.ant</b> is a true ant script loaded before the module.ivy. It's the right place if you want to override target/extension-point provided by things defined later in module.ivy.
For example suppose we want to introduce a new phase named my-phase run before the default package phase.
<code type="xml">
<project name="org.apache.easyant.buildtypes#standard-java-app"
xmlns:ea="antlib:org.apache.easyant">
<!-- Define a new phase -->
- <phase name="my-phase" description="foobar"/>
+ <extension-point name="my-phase" description="foobar"/>
<!-- Override the package phase that depends on my-phase and the default package phase -->
- <phase name="package" depends="my-phase, org.apache.easyant.plugins#phases-std.package" description="package the application"/>
+ <extension-point name="package" depends="my-phase, org.apache.easyant.plugins#phases-std.package" description="package the application"/>
</project>
</code>
</textarea>
Modified: incubator/easyant/core/trunk/src/documentation/ref/ProjectMancommand.html
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/documentation/ref/ProjectMancommand.html?rev=1393039&r1=1393038&r2=1393039&view=diff
==============================================================================
--- incubator/easyant/core/trunk/src/documentation/ref/ProjectMancommand.html (original)
+++ incubator/easyant/core/trunk/src/documentation/ref/ProjectMancommand.html Tue Oct 2 17:14:46 2012
@@ -24,15 +24,15 @@
<body>
<textarea id="xooki-source">
<h1>ProjectMan commands</h1>
-EasyAnt 0.7 cames with a few new switches usable from the command line that allow you to obtain several informations on a given project.
+EasyAnt cames with a few new switches usable from the command line that allow you to obtain several informations on a given project.
<ul>
<li>listTargets : Lists all targets available</li>
- <li>listTargets [arg] : Lists all targets associated with the specified phase / plugin as argument</li>
- <li>listPhases : Lists all phases available</li>
+ <li>listTargets [arg] : Lists all targets associated with the specified extension-point / plugin as argument</li>
+ <li>listExtensionPoints : Lists all extension-points available</li>
<li>listPugins : Lists all plugins imported in the current project</li>
<li>listProps [plugin] : Lists all properties available in the specified plugin</li>
- <li>describe [arg] : Describes a phase / target / property specified by argument</li>
+ <li>describe [arg] : Describes an extension-point / target / property specified by argument</li>
</ul>
<h2>listTargets</h2>
@@ -52,18 +52,18 @@ No Phase / Plugin specified. Listing all
UNLESS: NONE
...
Target: run:doit
- Phase: NONE
+ Extension-point: NONE
Description: NONE
Depends: :init, :run
IF: NONE
UNLESS: NONE
---- End Of (Phases Listing) ---
+--- End Of (Targets Listing) ---
</code>
<h2>listTargets [arg]</h2>
-Lists all targets associated with the specified phase / plugin as argument :
+Lists all targets associated with the specified extension-point / plugin as argument :
<code type="shell">
> easyant -listTargets package
</code>
@@ -74,16 +74,16 @@ Project Manual
--- Available Targets for current project: standard-java-app ---
Targets for Phase: package
- Target: jar:jar
- Phase: package
+ Target: package-jar:jar
+ Extension-point: package
Description: NONE
Depends: validate, compile,prepare-package
IF: NONE
UNLESS: skip.jar.package
Targets for Module: package
- Target: :init
- Phase: validate
+ Target: package-jar:init
+ Extension-point: NONE
Description: NONE
Depends: NONE
IF: NONE
Modified: incubator/easyant/core/trunk/src/documentation/ref/buildtypes/buildtypes.html
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/documentation/ref/buildtypes/buildtypes.html?rev=1393039&r1=1393038&r2=1393039&view=diff
==============================================================================
--- incubator/easyant/core/trunk/src/documentation/ref/buildtypes/buildtypes.html (original)
+++ incubator/easyant/core/trunk/src/documentation/ref/buildtypes/buildtypes.html Tue Oct 2 17:14:46 2012
@@ -26,11 +26,11 @@
<textarea id="xooki-source">
<h1>Build Types</h1>
-A "Build Type" identifies at a high level how you want a single module in your project to be built. Building a module typically includes many steps like compilation, source generation, unit testing, packaging, and build reporting. For example, the build type <a href="build-webapp-java.html">build-webapp-java</a> compiles, tests, and packages a Java WAR file.
+A "Build Type" identifies at a high level how you want a single module in your project to be built. Building a module typically includes many steps like compilation, source generation, unit testing, packaging, and build reporting. For example, the build type build-webapp-java compiles, tests, and packages a Java WAR file.
A BuildType is typically implemented as an Ant script, an Ivy descriptor, and a properties file. The Ivy descriptor is used by EasyAnt to load the Build Type as runtime. The Ant Script is executed whenever you build a module using that Build Type. Most Build Type scripts simply import a set of <a href="../plugins/plugins.html">EasyAnt Plugins</a>, each plugin contributing one step to the build process.
-For example, the <a href="build-std-java.html">build-std-java</a> Build Type imports the <a href="../plugins/compile-java.html">compile-java</a> plugin to compile Java sources and the <a href="../plugins/package-jar.html">package-jar</a> plugin to bundle the results as a JAR file.
+For example, the build-std-java Build Type imports the compile-java plugin to compile Java sources and the package-jar plugin to bundle the results as a JAR file.
A Build Type's properties file then contains default parameter settings used by the plugins; for example, the expected location of Java source and test files in a project directory.
Modified: incubator/easyant/core/trunk/src/documentation/ref/plugins/plugins.html
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/documentation/ref/plugins/plugins.html?rev=1393039&r1=1393038&r2=1393039&view=diff
==============================================================================
--- incubator/easyant/core/trunk/src/documentation/ref/plugins/plugins.html (original)
+++ incubator/easyant/core/trunk/src/documentation/ref/plugins/plugins.html Tue Oct 2 17:14:46 2012
@@ -84,7 +84,6 @@ If you want to add support for a new bui
<ul>
<li>Clean</li>
<li>Resource standard</li>
- <li>Emma coverage</li>
<li>Checkstyle</li>
<li>Jetty deployment</li>
<li>Skeleton plugins (manages skeleton of projects)</li>
Modified: incubator/easyant/core/trunk/src/documentation/reference.html
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/documentation/reference.html?rev=1393039&r1=1393038&r2=1393039&view=diff
==============================================================================
--- incubator/easyant/core/trunk/src/documentation/reference.html (original)
+++ incubator/easyant/core/trunk/src/documentation/reference.html Tue Oct 2 17:14:46 2012
@@ -42,20 +42,20 @@ Finally easyant tries to import an optio
<h2>EasyAnt instructions in module.ivy</h2>
EasyAnt intructions in module.ivy files looks like this
<code type="xml">
-<ea:build organisation="org.apache.easyant.buildtypes" module="build-std-java" revision="0.2">
+<ea:build organisation="org.apache.easyant.buildtypes" module="build-std-java" revision="0.9">
<ea:property name="run.main.classname" value="org.apache.easyant.example.Example"/>
<ea:property name="target.artifacts" value="dist"/>
- <ea:plugin module="emma" revision="0.1"/>
+ <ea:plugin module="run-java" revision="0.9"/>
</ea:build>
</code>
The idea is to have a very limited options to customize the build in the Ivy file: settings properties, specify build modules (buildtype / plugins). If you need more, you can use a module.ant file.
Let's try to understand how to use it.
-'ea:build' tag is the main instruction. Type argument in easyant tag references a build type, which tells which build module should be imported (considered as an <a href="ref/anttasks/Importtask.html">import</a>), see below.
+'ea:build' tag is the main instruction, arguments references a build type, which tells which build module should be imported (considered as an <a href="ref/anttasks/Importtask.html">import</a>), see below.
Example:
<code type="xml">
-<ea:build organisation="org.apache.easyant.buildtypes" module="build-std-java" revision="0.2">
+<ea:build organisation="org.apache.easyant.buildtypes" module="build-std-java" revision="0.9">
</code>
You can also have property definition, as you would have in an Ant script
Example:
@@ -66,27 +66,11 @@ Usually build-type does the basic stuff.
You can load several plugins using the plugin tag.
Example:
<code type="xml">
-<ea:plugin module="emma" revision="0.1"/>
+<ea:plugin module="run-java" revision="0.9"/>
</code>
-In this example emma module is loaded as a plugin(considered as an <a href="ref/anttasks/Importtask.html">include</a>).
-As easyant proceeds with execution, all targets are imported in current project prefixed by the project name.
-This means all targets included in emma module will be prefixed by org.apache.easyant.plugins#emma.
-Example :
-<code type="xml">
-org.apache.easyant.plugins#emma:emma generate emma covera report
-</code>
-
-As the name is not really "user-friendly" you can use an alias for the prefix using "as" attribute.
-Example:
-<code type="xml">
-<ea:plugin module="emma" revision="0.1" as="emma"/>
-</code>
-Doing this, all targets included in emma module will be prefixed by "emma"
-Example :
-<code type="xml">
-emma:emma generate emma coverage report
-</code>
+In this example run-java module is loaded as a plugin(considered as an <a href="ref/anttasks/Importtask.html">include</a>).
+As easyant proceeds with execution, all targets are imported in current project.
<h2>build modules:</h2>
There are two types of build modules:
@@ -104,7 +88,7 @@ Each build plugin define the expected "p
<ea:parameter property="src.main.java" required="true" description="directory where sources to be compiled are" />
</code>
-This is intended to be used both for validation and documentation, ATM only basic validation is performed.
+This is intended to be used both for validation and documentation.
<h3>build types:</h3>
A build type is a set of module preconfigured for a particular type of project (simple java jar, war, ...). EasyAnt comes with a set of build types modules relying on a standard lifecycle, but users could extend/replace it as they want. In most cases users will simply define the build type to use (either standard or a custom one ) and add specific plugins.</textarea>