This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to annotated tag japicmp-base-0.0.1
in repository https://gitbox.apache.org/repos/asf/commons-vfs.git

commit 846a43525864fa8a273fb06f12a06f4be1db0f99
Author: mmois <martin.m...@googlemail.com>
AuthorDate: Sun Sep 29 22:53:53 2013 +0200

    Updated pom.xml and README.md
---
 README.md       |  39 ++++++++++++++++-
 japicmp/pom.xml | 131 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 2 files changed, 168 insertions(+), 2 deletions(-)

diff --git a/README.md b/README.md
index eede782..06631f7 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,41 @@
 japicmp
 =======
 
-Comparison of two versions of a jar archive
+japicmp is a tool to compare two versions of a jar archive:
+
+    java -jar japicmp-0.0.1-SNAPSHOT.jar -n new-version.jar -o old-version.jar
+
+It can also be used as a library to integration its functionality in some 
other kind of software:
+
+    List<JApiClass> jApiClasses = jarArchiveComparator.compare(oldArchive, 
newArchive);
+
+##Motivation##
+
+Every time you make a new release of a library or a product you have to tell 
your clients or customers what
+has changed in comparison to the last release. Without the appropriate 
tooling, this task is tedious and error-prone.
+This tool/library helps you to determine the differences between the java 
class files that are contained in the two
+jar archives.
+In contrast to other libraries/tools, this library does not use the Java 
Reflection API to compute
+the differences, as the usage of the Reflection API makes it necessary to 
include all classes the jar archive under
+investigation depends on are available on the classpath. To prevent the 
inclusion of all dependent libraries, which
+can be a lot of work for bigger applications, this library makes use of the 
[javassist](http://www.csg.ci.i.u-tokyo.ac.jp/~chiba/javassist/)
+library to inspect the class files. This way you only have to provide the two 
jar archives on the command line, that's it.
+
+##Usage##
+
+The tool has a set of CLI parameters that are described in the following:
+
+    -h                        Prints this help.
+    -o <pathToOldVersionJar>  Provides the path to the old version of the jar.
+    -n <pathToNewVersionJar>  Provides the path to the new version of the jar.
+    -x <pathToXmlOutputFile>  Provides the path to the xml output file. If not 
given, stdout is used.
+    -m                        Outputs only modified classes/methods. If not 
given, all classes and methods are printed.
+
+##Downloads##
+
+The latest development version can be downloaded here: 
[0.0.1-SNAPSHOT](http://repository-siom79.forge.cloudbees.com/snapshot/japicmp/japicmp/0.0.1-SNAPSHOT/japicmp-0.0.1-20130929.203701-1.jar)
+
+##Development##
+
+* [Jenkins build server](https://siom79.ci.cloudbees.com/job/japicmp) [![Build 
Status](https://siom79.ci.cloudbees.com/job/japicmp/badge/icon)](https://siom79.ci.cloudbees.com/job/japicmp)
+* [Maven snapshot 
repository](https://repository-siom79.forge.cloudbees.com/snapshot)
\ No newline at end of file
diff --git a/japicmp/pom.xml b/japicmp/pom.xml
index f26ebbf..dba6508 100644
--- a/japicmp/pom.xml
+++ b/japicmp/pom.xml
@@ -11,6 +11,12 @@
 
     <artifactId>japicmp</artifactId>
 
+    <properties>
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <github.account>siom79</github.account>
+        <cloudbees.account>siom79</cloudbees.account>
+    </properties>
+
     <dependencies>
         <dependency>
             <groupId>javassist</groupId>
@@ -50,7 +56,130 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <artifactId>maven-assembly-plugin</artifactId>
+                <configuration>
+                    <archive>
+                        <manifest>
+                            <mainClass>japicmp.JApiCmp</mainClass>
+                        </manifest>
+                    </archive>
+                    <descriptorRefs>
+                        <descriptorRef>jar-with-dependencies</descriptorRef>
+                    </descriptorRefs>
+                    
<finalName>${project.artifactId}-${project.version}</finalName>
+                    <appendAssemblyId>false</appendAssemblyId>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>make-assembly</id>
+                        <phase>package</phase>
+                        <goals>
+                            <goal>single</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <version>3.1</version>
+                <configuration>
+                    <source>1.5</source>
+                    <target>1.5</target>
+                </configuration>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-release-plugin</artifactId>
+                <version>2.4.1</version>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <version>2.9.1</version>
+                <executions>
+                    <execution>
+                        <id>attach-javadocs</id>
+                        <goals>
+                            <goal>jar</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-source-plugin</artifactId>
+                <version>2.2.1</version>
+                <executions>
+                    <execution>
+                        <id>attach-sources</id>
+                        <goals>
+                            <goal>jar-no-fork</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <!-- explicitly define maven-deploy-plugin after other to 
force exec order -->
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-deploy-plugin</artifactId>
+                <version>2.7</version>
+                <executions>
+                    <execution>
+                        <id>deploy</id>
+                        <phase>deploy</phase>
+                        <goals>
+                            <goal>deploy</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
+        <extensions>
+            <extension>
+                <groupId>org.apache.maven.wagon</groupId>
+                <artifactId>wagon-webdav-jackrabbit</artifactId>
+                <version>1.0-beta-7</version>
+            </extension>
+        </extensions>
     </build>
-
+    <scm>
+        
<connection>scm:git:git://github.com/${github.account}/${project.groupId}.git</connection>
+        
<developerConnection>scm:git:g...@github.com:${github.account}/${project.groupId}.git</developerConnection>
+        
<url>http://github.com/${github.account}/${project.groupId}/tree/master/</url>
+        <tag>HEAD</tag>
+    </scm>
+    <distributionManagement>
+        <repository>
+            <id>cloudbees-public-release</id>
+            
<url>dav:https://repository-${cloudbees.account}.forge.cloudbees.com/release</url>
+        </repository>
+        <snapshotRepository>
+            <id>cloudbees-public-snapshot</id>
+            
<url>dav:https://repository-${cloudbees.account}.forge.cloudbees.com/snapshot</url>
+        </snapshotRepository>
+    </distributionManagement>
+    <repositories>
+        <repository>
+            <id>cloudbees-public-snapshot</id>
+            
<url>https://repository-${cloudbees.account}.forge.cloudbees.com/public-snapshot</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>cloudbees-public-release</id>
+            
<url>https://repository-${cloudbees.account}.forge.cloudbees.com/public-release</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+    </repositories>
 </project>
\ No newline at end of file

Reply via email to