[fedora-java] XMvn 0.5.0 release notes

Mikolaj Izdebski mizdebsk at redhat.com
Fri May 24 09:23:16 UTC 2013


>> * Major features
>>
>>   * XMvn Subst
>>
>>     Version 0.5.0 brings a new tool - XMvn Subst.  This tool is able
>>     to replace individual artifact files with symbolic links to
>>     corresponding files in system artifact repository.  It is also
>>     able to recursively process whole directories.
>>
>>
> Neat. Is this intended to replace the old build-jar-repository tool?

Yes, that's one of use cases, but there are some limitations.  JARs
being replaced must be built with Maven (they need to have
pom.properties file which specified groupId/artifactId/version), so XMvn
Subst won't be able to replace JARs built with Ant, for example.

Example usage:

$ xmvn-subst --help
xmvn-subst: Substitute artifact files with symbolic links

Usage: xmvn-subst [options]
  Options:
    -X, --debug
       Display debugging information
       Default: false
    -L, --follow-symlinks
       Follow symbolic links when traversing directory structure
       Default: false
    -h, --help
       Display usage information
       Default: false
    -t, --type
       Consider artifacts with given type
       Default: [jar, war]
    -D
       Define system property
       Syntax: -Dkey=value
       Default: {}

$ ls -go
total 1816
-rw-rw-r--. 1  44598 May 24 10:12 commons-logging-api-1.1.jar
-rw-rw-r--. 1 639592 May 24 10:12 google-collections-1.0.jar
-rw-rw-r--. 1  60376 May 24 10:12 jcommander-1.30.jar
-rw-rw-r--. 1 358085 May 24 10:12 log4j-1.2.12.jar
-rw-rw-r--. 1  46969 May 24 10:12 plexus-classworlds-2.4.2.jar
-rw-rw-r--. 1   4211 May 24 10:12 plexus-component-annotations-1.5.5.jar
-rw-rw-r--. 1 216640 May 24 10:12 plexus-container-default-1.5.5.jar
-rw-rw-r--. 1 230883 May 24 10:12 plexus-utils-3.0.10.jar
-rw-rw-r--. 1 133826 May 24 10:12 xbean-reflect-3.4.jar
-rw-rw-r--. 1  98207 May 24 10:12 xmvn-core-0.5.0.jar
-rw-rw-r--. 1   5778 May 24 10:12 xmvn-resolve-0.5.0.jar

$ xmvn-subst .
[INFO] Linked ./xmvn-resolve-0.5.0.jar to
/usr/share/java/xmvn/xmvn-resolve.jar
[INFO] Skipping file ./commons-logging-api-1.1.jar: No artifact
definition found
[INFO] Linked ./plexus-utils-3.0.10.jar to /usr/share/java/plexus/utils.jar
[INFO] Linked ./xbean-reflect-3.4.jar to
/usr/share/java/xbean/xbean-reflect.jar
[INFO] Linked ./plexus-classworlds-2.4.2.jar to
/usr/share/java/plexus/classworlds.jar
[INFO] Linked ./plexus-container-default-1.5.5.jar to
/usr/share/java/plexus/containers-container-default.jar
[INFO] Linked ./google-collections-1.0.jar to /usr/share/java/guava.jar
[INFO] Linked ./xmvn-resolve-0.5.0.jar to
/usr/share/java/xmvn/xmvn-resolve.jar
[INFO] Skipping file ./commons-logging-api-1.1.jar: No artifact
definition found

$ ls -go
total 396
-rw-rw-r--. 1  44598 May 24 10:12 commons-logging-api-1.1.jar
lrwxrwxrwx. 1     25 May 24 11:18 google-collections-1.0.jar ->
/usr/share/java/guava.jar
lrwxrwxrwx. 1     36 May 24 11:18 jcommander-1.30.jar ->
/usr/share/java/beust-jcommander.jar
-rw-rw-r--. 1 358085 May 24 10:12 log4j-1.2.12.jar
lrwxrwxrwx. 1     38 May 24 11:18 plexus-classworlds-2.4.2.jar ->
/usr/share/java/plexus/classworlds.jar
lrwxrwxrwx. 1     59 May 24 11:18 plexus-component-annotations-1.5.5.jar
-> /usr/share/java/plexus/containers-component-annotations.jar
lrwxrwxrwx. 1     55 May 24 11:18 plexus-container-default-1.5.5.jar ->
/usr/share/java/plexus/containers-container-default.jar
lrwxrwxrwx. 1     32 May 24 11:18 plexus-utils-3.0.10.jar ->
/usr/share/java/plexus/utils.jar
lrwxrwxrwx. 1     39 May 24 11:18 xbean-reflect-3.4.jar ->
/usr/share/java/xbean/xbean-reflect.jar
lrwxrwxrwx. 1     34 May 24 11:18 xmvn-core-0.5.0.jar ->
/usr/share/java/xmvn/xmvn-core.jar
lrwxrwxrwx. 1     37 May 24 11:18 xmvn-resolve-0.5.0.jar ->
/usr/share/java/xmvn/xmvn-resolve.jar

Note that commons-logging-api-1.1.jar and log4j-1.2.12.jar were not
replaced.  This is expected.

-- 
Mikolaj Izdebski
IRC: mizdebsk


More information about the java-devel mailing list