Jaxen 2.0 Released
December 22, 2022
Submitted by Elliotte Rusty Harold.
Version 2.0.0 of the Jaxen XPath engine is now available. Jaxen is an open source XPath 1.0 library written in Java. It is adaptable to many different object models, including DOM, XOM, dom4j, and JDOM. Is it also possible to write adapters that treat non-XML trees such as compiled Java byte code or Java beans as XML, thus enabling you to query these trees with XPath too.
The coordinates are:
<dependency>
<groupId>jaxen</groupId>
<artifactId>jaxen</artifactId>
<version>2.0.0</version>
</dependency>
Despite the major version bump, this should be a drop in replacement for almost every project. The two major possible incompatibilities are:
- The minimum supported Java version is now 1.5, up from 1.4 in 1.2.0
and 1.3 in 1.1.6. - dom4j, XOM, and JDOM are now optional dependencies so if a project was depending on them to be loaded transitively it will need to add explicit dependencies to build.
On the plus side, this makes classpaths much smaller and less complex, and will shut up a lot of noise from static analysis tools.
In addition the Jaxen core code is also a little smaller and has fixed a few minor bugs in XPath evaluation, mostly weird cases found by fuzzing that are unlikely to arise in practice.