Bug#1011597: tiles: FTBFS with OpenJDK 17 due to an illegal reflective access in maven-autotag-plugin

Emmanuel Bourg ebourg at apache.org
Wed May 25 08:00:10 BST 2022


Source: tiles
Version: 3.0.7-4
Severity: important
Tags: ftbfs sid bookworm
User: debian-java at lists.debian.org
Usertags: default-java17


tiles fails to build with OpenJDK 17, there is an illegal reflective access
when executing the maven-autotag-plugin. It's not clear if the root cause
comes from tiles, tiles-autotag or libxstream-java.


  [INFO] ------------------------------------------------------------------------
  [INFO] BUILD FAILURE
  [INFO] ------------------------------------------------------------------------
  [INFO] Total time:  2.791 s
  [INFO] Finished at: 2022-05-25T04:23:38Z
  [INFO] ------------------------------------------------------------------------
  [ERROR] Failed to execute goal org.apache.tiles.autotag.plugin:maven-autotag-plugin:1.2:generate-jsp (default) on project tiles-jsp: Execution default of goal org.apache.tiles.autotag.plugin:maven-autotag-plugin:1.2:generate-jsp failed: An API incompatibility was encountered while executing org.apache.tiles.autotag.plugin:maven-autotag-plugin:1.2:generate-jsp: java.lang.ExceptionInInitializerError: null
  [ERROR] -----------------------------------------------------
  [ERROR] realm =    plugin>org.apache.tiles.autotag.plugin:maven-autotag-plugin:1.2
  [ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
  [ERROR] urls[0] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/apache/tiles/autotag/plugin/maven-autotag-plugin/1.2/maven-autotag-plugin-1.2.jar
  [ERROR] urls[1] = file:/<<PKGBUILDDIR>>/debian/maven-repo/javax/enterprise/cdi-api/debian/cdi-api-debian.jar
  [ERROR] urls[2] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/apache/geronimo/specs/geronimo-interceptor_3.0_spec/debian/geronimo-interceptor_3.0_spec-debian.jar
  [ERROR] urls[3] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/codehaus/plexus/plexus-utils/2.x/plexus-utils-2.x.jar
  [ERROR] urls[4] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/sonatype/plexus/plexus-build-api/debian/plexus-build-api-debian.jar
  [ERROR] urls[5] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/apache/tiles/tiles-autotag-core/debian/tiles-autotag-core-debian.jar
  [ERROR] urls[6] = file:/<<PKGBUILDDIR>>/debian/maven-repo/com/thoughtworks/qdox/qdox/debian/qdox-debian.jar
  [ERROR] urls[7] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/apache/tiles/tiles-autotag-core-runtime/debian/tiles-autotag-core-runtime-debian.jar
  [ERROR] urls[8] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/apache/velocity/velocity/debian/velocity-debian.jar
  [ERROR] urls[9] = file:/<<PKGBUILDDIR>>/debian/maven-repo/commons-collections/commons-collections/3.x/commons-collections-3.x.jar
  [ERROR] urls[10] = file:/<<PKGBUILDDIR>>/debian/maven-repo/commons-lang/commons-lang/debian/commons-lang-debian.jar
  [ERROR] urls[11] = file:/<<PKGBUILDDIR>>/debian/maven-repo/com/thoughtworks/xstream/xstream/debian/xstream-debian.jar
  [ERROR] urls[12] = file:/<<PKGBUILDDIR>>/debian/maven-repo/xpp3/xpp3/debian/xpp3-debian.jar
  [ERROR] urls[13] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/apache/tiles/tiles-autotag-jsp/debian/tiles-autotag-jsp-debian.jar
  [ERROR] urls[14] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/codehaus/plexus/plexus-interpolation/debian/plexus-interpolation-debian.jar
  [ERROR] urls[15] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/codehaus/plexus/plexus-sec-dispatcher/debian/plexus-sec-dispatcher-debian.jar
  [ERROR] urls[16] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/codehaus/plexus/plexus-cipher/debian/plexus-cipher-debian.jar
  [ERROR] urls[17] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/apache/maven/maven-builder-support/3.x/maven-builder-support-3.x.jar
  [ERROR] urls[18] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/apache/maven/resolver/maven-resolver-util/debian/maven-resolver-util-debian.jar
  [ERROR] urls[19] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/apache/maven/shared/maven-shared-utils/debian/maven-shared-utils-debian.jar
  [ERROR] urls[20] = file:/<<PKGBUILDDIR>>/debian/maven-repo/commons-io/commons-io/debian/commons-io-debian.jar
  [ERROR] urls[21] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/eclipse/sisu/org.eclipse.sisu.inject/debian/org.eclipse.sisu.inject-debian.jar
  [ERROR] urls[22] = file:/<<PKGBUILDDIR>>/debian/maven-repo/com/google/inject/guice/debian/guice-debian-no_aop.jar
  [ERROR] urls[23] = file:/<<PKGBUILDDIR>>/debian/maven-repo/aopalliance/aopalliance/debian/aopalliance-debian.jar
  [ERROR] urls[24] = file:/<<PKGBUILDDIR>>/debian/maven-repo/com/google/guava/guava/debian/guava-debian.jar
  [ERROR] urls[25] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/jsr-305/jsr305/0.x/jsr305-0.x.jar
  [ERROR] urls[26] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/codehaus/plexus/plexus-component-annotations/debian/plexus-component-annotations-debian.jar
  [ERROR] urls[27] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/apache/commons/commons-lang3/debian/commons-lang3-debian.jar
  [ERROR] urls[28] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/apache/tiles/tiles-autotag-freemarker/debian/tiles-autotag-freemarker-debian.jar
  [ERROR] urls[29] = file:/<<PKGBUILDDIR>>/debian/maven-repo/org/apache/tiles/tiles-autotag-velocity/debian/tiles-autotag-velocity-debian.jar
  [ERROR] Number of foreign imports: 1
  [ERROR] import: Entry[import  from realm ClassRealm[maven.api, parent: null]]
  [ERROR]
  [ERROR] -----------------------------------------------------: Unable to make field private final java.util.Comparator java.util.TreeMap.comparator accessible: module java.base does not "opens java.util" to unnamed module @3b9c386d
  [ERROR] -> [Help 1]
  [ERROR]
  [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
  [ERROR] Re-run Maven using the -X switch to enable full debug logging.
  [ERROR]
  [ERROR] For more information about the errors and possible solutions, please read the following articles:
  [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginContainerException



With debugging enabled the stacktrace of the root cause is:

Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make field private final java.util.Comparator java.util.TreeMap.comparator accessible: module java.base does not "opens java.util" to unnamed module @77feca04
    at java.lang.reflect.AccessibleObject.checkCanSetAccessible (AccessibleObject.java:354)
    at java.lang.reflect.AccessibleObject.checkCanSetAccessible (AccessibleObject.java:297)
    at java.lang.reflect.Field.checkCanSetAccessible (Field.java:178)
    at java.lang.reflect.Field.setAccessible (Field.java:172)
    at com.thoughtworks.xstream.core.util.Fields.locate (Fields.java:40)
    at com.thoughtworks.xstream.converters.collections.TreeMapConverter$Reflections.<clinit> (TreeMapConverter.java:135)
    at com.thoughtworks.xstream.converters.collections.TreeMapConverter.unmarshal (TreeMapConverter.java:73)
    at com.thoughtworks.xstream.core.TreeUnmarshaller.convert (TreeUnmarshaller.java:72)
    at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert (AbstractReferenceUnmarshaller.java:72)
    at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother (TreeUnmarshaller.java:66)
    at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshallField (AbstractReflectionConverter.java:499)
    at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUnmarshal (AbstractReflectionConverter.java:425)
    at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal (AbstractReflectionConverter.java:277)
    at com.thoughtworks.xstream.core.TreeUnmarshaller.convert (TreeUnmarshaller.java:72)
    at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert (AbstractReferenceUnmarshaller.java:72)
    at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother (TreeUnmarshaller.java:66)
    at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother (TreeUnmarshaller.java:50)
    at com.thoughtworks.xstream.core.TreeUnmarshaller.start (TreeUnmarshaller.java:134)
    at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal (AbstractTreeMarshallingStrategy.java:32)
    at com.thoughtworks.xstream.XStream.unmarshal (XStream.java:1391)
    at com.thoughtworks.xstream.XStream.unmarshal (XStream.java:1376)
    at com.thoughtworks.xstream.XStream.fromXML (XStream.java:1270)
    at org.apache.tiles.autotag.plugin.AbstractGenerateMojo.execute (AbstractGenerateMojo.java:110)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:193)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:182)
    at org.debian.maven.Wrapper.main (Wrapper.java:89)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard (Launcher.java:321)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:234)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)



More information about the pkg-java-maintainers mailing list