From 5d775b574a081b7d621b05d921911a6c66e82e97 Mon Sep 17 00:00:00 2001 From: antelder Date: Tue, 28 Apr 2009 08:32:16 +0000 Subject: Update readme with Mike's ML post to the alpha1 vote thread git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@769292 13f79535-47bb-0310-9956-ffa450edef68 --- maven-plugins/trunk/maven-zip-plugin/README | 161 ++++++++++++++++++++++++---- 1 file changed, 143 insertions(+), 18 deletions(-) (limited to 'maven-plugins') diff --git a/maven-plugins/trunk/maven-zip-plugin/README b/maven-plugins/trunk/maven-zip-plugin/README index 67fb9c1319..671e7ccc40 100644 --- a/maven-plugins/trunk/maven-zip-plugin/README +++ b/maven-plugins/trunk/maven-zip-plugin/README @@ -1,25 +1,35 @@ -This module is a Maven plugin which supports using a packaging of zip in a pom.xml to -create a zip format SCA contribution. +User Documentation +__________________ -The main difference between an SCA zip and jar contribution is that a zip contribution supports -nesting jar's within the zip and having those nested jar's available within the classloader -of the contribution. This enables packaging application classes and any 3rd party jars they -depend on together in one contribution. +This module is a Maven plugin which supports the creation of a zip format SCA contribution from +the contents of a Maven project. An SCA contribution can be deployed to the Tuscany SCA runtime +and run as an application. -The zip plugin builds a zip archive of the project and includes any dependency jars used by -the project inside the zip in a folder name "lib" - -TODOs: -- make the "lib/" folder where the dependent jars go configurable -- make which dependencies get included configurable - (currently its those with compile or runtime scope) +One of the main uses for an SCA zip contribution is that the SCA zip contribution can contain +Java jar files within the zip and those jar files are available to the Java classloader of the +contribution. This enables the packaging of application Java classes along with any other Jar files +which they depend on in one contribution file. As a result the single zip file can hold everything +that's needed for the SCA application other than the Tuscany runtime itself - in one neat package. + +The zip Maven plugin is used by adding a section into portion of the pom.xml of the Maven +project which relates to the maven zip plugin. It is also necessary for the packaging of the output +of the project to be declared as "zip". Then run Maven in the project. + +This zip plugin builds the output of the project as an SCA zip archive and it includes any +jar files from dependencies declared by the project, where those dependency jar files are placed +into the zip archive in a folder with the name "lib". + +An example pom.xml including the zip plugin statements: -An example pom.xml: + ... + zip ... ... + + ... org.apache.tuscany.maven.plugins maven-zip-plugin @@ -29,13 +39,120 @@ An example pom.xml: +(It is probably a good idea to now give an example of a complete POM containing one this stuff so that +users get the full context - I've attached one here, but it isn't the best example) + + + + + 4.0.0 + + + tuscany-sca + org.apache.tuscany.sca + 2.0-SNAPSHOT + + org.inglenook.test1 + mikestest + zip + 1.0-SNAPSHOT + quickstart + + + + + org.apache.tuscany.sca + tuscany-sca-api + ${tuscany.version} + provided + + + + + commons-io + commons-io + 1.4 + + + + + junit + junit + 3.8.2 + test + + + + + install + ${artifactId} + + + src/main/resources + + + src/main/java + + ** + + + **/*.java + + + + + + src/test/java + + ** + + + **/*.java + + + + + + true + org.apache.maven.plugins + maven-compiler-plugin + + 1.5 + 1.5 + true + true + + + + org.apache.maven.plugins + maven-eclipse-plugin + + true + + + + org.apache.tuscany.maven.plugins + maven-zip-plugin + true + + + org.apache.tuscany.maven.plugins + maven-tuscany-plugin + + + + + 2.0-SNAPSHOT + + ------------------------------------------------------------------------------ -This Tuscany module includes much code copied from the Maven WAR plugin 2.0.2 -written by the Apache Maven team. ------------------------------------------------------------------------------ +TODOs: +- make the "lib/" folder where the dependent jars go configurable +- make which dependencies get included configurable + (currently its those with compile or runtime scope) +--------------------------------- Building and releasing the plugin --------------------------------- @@ -96,3 +213,11 @@ After a successfule vote copy the staging artifacts to the live repository, eg: cp -p -v -R maven-zip-plugin-alpha1/org/apache/tuscany/maven/plugins/ /x1/www/people.apache.org/repo/m2-ibiblio-rsync-repository/org/apache/tuscany/maven/plugins +----------------------------------------------------------------------------- +This Tuscany module includes much code copied from the Maven WAR plugin 2.0.2 +written by the Apache Maven team. +----------------------------------------------------------------------------- + + + + -- cgit v1.2.3