0

Axiom 1.2.15 distribution states in the release notes:

The implementation JARs (axiom-impl and axiom-dom) are now built with AspectJ (to reduce source code duplication) and contain a small subset of classes from the AspectJ runtime library. There is a small risk that this may cause conflicts with other code that uses AspectJ.

Well, this does cause an issue in my project with AspectJ 1.9.2. Maven complains:

09:35:12,617 [WARNING] Found duplicate and different classes in [org.apache.ws.commons.axiom:axiom-dom:1.2.21, org.apache.ws.commons.axiom:axiom-impl:1.2.21, org.aspectj:aspectjrt:1.9.2, org.aspectj:aspectjweaver:1.9.2]:
09:35:12,619 [WARNING]   org.aspectj.lang.annotation.Aspect

I can't exclude Axiom from our project as it is being pulled in by Axis. Is there a distribution of Axiom that does not include AspectJ classes or do I need to build one of my own?

  • Well, warnings don't mean that you will have problems during runtime as long as the AspectJ versions match. But - never having used Axiom or even knowing what it is - I find it particularly stupid to package classes from a dependency like AspectJ into the tool, knowingly risking users to have problems. The AspectJ runtime is just 120 K, this kind of "optimisation" is just silly. (I know this does not help you, thus it is a comment and not an answer.) – kriegaex Apr 03 '19 at 02:58

1 Answers1

1

This will be fixed in Axiom 1.2.23.

Andreas Veithen
  • 8,868
  • 3
  • 25
  • 28
  • Indeed current [Axiom 1.2.23 snapshots](https://repository.apache.org/content/groups/snapshots/org/apache/ws/commons/axiom/axiom-impl/1.2.23-SNAPSHOT/) (download JAR) do not contain `org.aspectj` classes anymore while in [1.2.22 release](https://mvnrepository.com/artifact/org.apache.ws.commons.axiom/axiom-impl/1.2.22) (download "bundle") they are still present. See also e.g. [this commit](https://github.com/apache/webservices-axiom/commit/23374199c74bbfce9cd7620fabe42c7107069a1f). Thanks for changing that, Andreas. :-) – kriegaex Jul 22 '19 at 00:59