What's new in XMvn 1.0.0
* Major features
* Flexible repositories
Since version 1.0.0 XMvn has a new way of configuring
repositories from which artifacts are resolved and to which they
are installed. Several aspects of artifact resolution which
were hardcoded in previous versions of XMvn are configurable
since version 1.0.0.
* Classifiers and extensions
Previous versions of XMvn lacked support for artifact
classifiers and for artifact extensions other than <<<jar>>> and
<<<pom>>>. Since version 1.0.0 XMvn supports resolution and
installation of artifacts with any classifier and extension.
* Compatibility versions
Although previous versions were able to resolve versioned
artifacts (also knows as compatibility versions), there was no
support for installing versioned artifacts. Since version 1.0.0
XMvn fully supports compatibility versions -- it is able to both
resolve and install versioned artifacts.
* Installing artifacts not produced in reactor
Sometimes there is a need to install artifacts not produced in
Maven reactor, but generated by other means, like custom script
or other build system. Since version 1.0.0 XMvn allows
installation of such artifacts along with artifacts produced by
Maven build.
* Artifact namespaces
XMvn 1.0.0 allows artifacts to have namespaces, which limits
possible name clashes and allows several versions of the same
artifact to be installed more easily without the need to use
compatibility versions. This feature can be used to implement
support for software collections.
* Minor features
* Improved performance of resolver
Reading depmap fragments is the dominant operation when running
short-living tools like XMvn Resolve or XMvn Subst. Since
version 1.0.0 depmaps are being read in parallel, which improves
performance on multi-processor systems.
* Improved build-requires generator
Dependency did not include all possible cases when generating
build-requires. This has been improved in XMvn 1.0.0.
* Improved support for compatibility versions
Versioned artifacts are now resolved in simpler and more obvious
way.
* Improved handling of Java versions
Besides standard versions like 1.4 or 1.7 XMvn now recognizes
other visioning schemes like 7.0 or 7, as well as <<<jsr14>>>
and <<<cldc1.1>>>.
* Improved error handling in command-line tools
Command like tools now print better error messages and are less
likely to print stack traces for user errors.
* Minor bugfixes
* Possible concurrency bug when creating symbolic links
Possible concurrency bug when creating symbolic links was
avoided by using file system atomic operations, if supported by
file system.