diff --git a/maven-site/src/site/xdoc/developing-plugins-with-marmalade.xml b/maven-site/src/site/xdoc/developing-plugins-with-marmalade.xml index 9e4a8bbf16..625325a1b3 100644 --- a/maven-site/src/site/xdoc/developing-plugins-with-marmalade.xml +++ b/maven-site/src/site/xdoc/developing-plugins-with-marmalade.xml @@ -61,19 +61,18 @@ compatibility with Jelly, and some measure of Jelly taglib compatibility...and this support will continue to improve as Maven 2.0 matures. As such, Marmalade can allow the plugin developer the freedom to concentrate on porting between project models and core facilities, rather than - worrying about translating Jelly into Java as well. + worrying about changing implementation languages.

Like Maven 2.0 itself, Marmalade is somewhat of a fledgling project. That is, while it's core engine is fairly sophisticated and mature, it's support for Jelly and other taglibs is still - growing at a brisk pace. In order to try to provide as much Jelly functionality to Maven 2.0 + growing at a brisk pace. In order to provide as much Jelly functionality out-of-the-box to Maven 2.0 users, Marmalade has an available compatibility layer for Jelly, which will allow the user - to basically embed Jelly within Marmalade for the taglibs that have not yet been ported to - native Marmalade. + to embed Jelly within Marmalade for the taglibs that have not yet been ported to native Marmalade.

-

For more information on Marmalade, Watch this space. +

For more information on Marmalade, see the Marmalade website. @@ -93,8 +92,8 @@ [Required] A pom.xml for building the plugin, which contains a script source directory resembling src/main/scripts]]> -

  • [Optional] Plugin resources for adding to the classpath when the plugin is run
  • -
  • [Optional] Other Java sources, which are accessed from that plugin's scripts
  • +
  • [Optional] Plugin resources to be used from within the plugin's scripts (available on the classpath)
  • +
  • [Optional] Other Java sources, which can be accessed from the plugin's scripts
  • @@ -102,9 +101,9 @@ Each .mmld script file must provide the same basic structural elements, which define it as a Maven 2.0 plugin, and provide essential metadata. This metadata is used to: @@ -114,8 +113,8 @@ The general structure of a Marmalade plugin script is:

    @@ -152,12 +151,21 @@ In a new directory, create a pom.xml file like so:

    - 4.0.0 - org.apache.maven.plugins - maven-hello-plugin - 1.0-SNAPSHOT + 4.0.0 - maven-plugin + + org.apache.maven.plugins + + + maven-hello-plugin + + + 1.0-SNAPSHOT + + + maven-plugin Maven Hello World Plugin @@ -167,8 +175,18 @@ --> - src/main/scripts + + + + + src/main/scripts + **/*.mmld + + ]]> @@ -177,7 +195,7 @@ goal within the build system, so you may need several scripts.

    - Since this is in fact a Hello World plugin, our script will simply output Hello, World + Since this is in fact a Hello World plugin, your script will simply output Hello, World to the screen. Create a script in src/main/scripts/hello.mmld with the following contents:

    - Now, to make use of the new parameter. Inside the ]]> tag, we'll + Now, to make use of the new parameter. Inside the ]]> action, simply write out the customizable salutation instead of the stock phrase Hello:

    ${salutation}, World. ]]>

    - Now, install the new plugin and run it: + Install the new plugin and run it, to verify your changes:

    m2 install m2 hello:hello

    - Notice that the file still has the same old salutation (which is the default value of the our parameter). + Notice that the output still has the same old salutation (which is the default value of the parameter). Now, to customize it:

    m2 -Dsalutation=Hiya hello:hello

    - The contents of hello.txt should now read: + The output should now read:

    Hiya, World

    - Now, users of this plugin can customize the salutation for their build without having to specify it on + Users of this plugin can also customize the salutation for their project and avoid having to specify it on the command line each time. All they have to do is create a plugin entry in their pom.xml similar to:

    diff --git a/maven-site/src/site/xdoc/index.xml b/maven-site/src/site/xdoc/index.xml index f81aac0455..7f63846426 100644 --- a/maven-site/src/site/xdoc/index.xml +++ b/maven-site/src/site/xdoc/index.xml @@ -121,6 +121,11 @@ Configuring Maven +
  • + + Developing Plugins with Marmalade + +
  • diff --git a/maven-site/src/site/xdoc/navigation.xml b/maven-site/src/site/xdoc/navigation.xml index 4339564130..91e571ec25 100644 --- a/maven-site/src/site/xdoc/navigation.xml +++ b/maven-site/src/site/xdoc/navigation.xml @@ -16,6 +16,7 @@ + \ No newline at end of file