docker-javaee
docker-javaee copied to clipboard
OpenJDK 9 JRE Slim base image throws NoClassDefFoundError
Using openjdk:9-b181-jre-slim throws the following exception. 8-jre-slim works fine.
webapp_web.1.lgprfpvebods@moby | WARNING: An illegal reflective access operation has occurred
webapp_web.1.lgprfpvebods@moby | WARNING: Illegal reflective access by org.jboss.modules.ClassLoaderLocalLoader$1 (file:/opt/docker-javaee-swarm.jar) to method java.lang.ClassLoader.getPackage(java.lang.String)
webapp_web.1.lgprfpvebods@moby | WARNING: Please consider reporting this to the maintainers of org.jboss.modules.ClassLoaderLocalLoader$1
webapp_web.1.lgprfpvebods@moby | WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
webapp_web.1.lgprfpvebods@moby | WARNING: All illegal access operations will be denied in a future release
webapp_web.1.lgprfpvebods@moby | Exception in thread "main" java.lang.reflect.InvocationTargetException
webapp_web.1.lgprfpvebods@moby | at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
webapp_web.1.lgprfpvebods@moby | at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
webapp_web.1.lgprfpvebods@moby | at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
webapp_web.1.lgprfpvebods@moby | at java.base/java.lang.reflect.Method.invoke(Method.java:564)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.bootstrap.Main.invoke(Main.java:84)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.bootstrap.Main.run(Main.java:48)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.bootstrap.Main.main(Main.java:43)
webapp_web.1.lgprfpvebods@moby | Caused by: java.lang.NoClassDefFoundError: jdk/internal/reflect/ConstructorAccessorImpl
webapp_web.1.lgprfpvebods@moby | at java.base/jdk.internal.misc.Unsafe.defineClass0(Native Method)
webapp_web.1.lgprfpvebods@moby | at java.base/jdk.internal.misc.Unsafe.defineClass(Unsafe.java:1173)
webapp_web.1.lgprfpvebods@moby | at java.base/jdk.internal.reflect.ClassDefiner.defineClass(ClassDefiner.java:63)
webapp_web.1.lgprfpvebods@moby | at java.base/jdk.internal.reflect.MethodAccessorGenerator$1.run(MethodAccessorGenerator.java:400)
webapp_web.1.lgprfpvebods@moby | at java.base/jdk.internal.reflect.MethodAccessorGenerator$1.run(MethodAccessorGenerator.java:394)
webapp_web.1.lgprfpvebods@moby | at java.base/java.security.AccessController.doPrivileged(Native Method)
webapp_web.1.lgprfpvebods@moby | at java.base/jdk.internal.reflect.MethodAccessorGenerator.generate(MethodAccessorGenerator.java:393)
webapp_web.1.lgprfpvebods@moby | at java.base/jdk.internal.reflect.MethodAccessorGenerator.generateConstructor(MethodAccessorGenerator.java:92)
webapp_web.1.lgprfpvebods@moby | at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:55)
webapp_web.1.lgprfpvebods@moby | at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
webapp_web.1.lgprfpvebods@moby | at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:488)
webapp_web.1.lgprfpvebods@moby | at org.jboss.shrinkwrap.api.SecurityActions.newInstance(SecurityActions.java:132)
webapp_web.1.lgprfpvebods@moby | at org.jboss.shrinkwrap.api.ArchivePaths.createInstance(ArchivePaths.java:125)
webapp_web.1.lgprfpvebods@moby | at org.jboss.shrinkwrap.api.ArchivePaths.create(ArchivePaths.java:63)
webapp_web.1.lgprfpvebods@moby | at org.jboss.shrinkwrap.impl.base.importer.zip.ZipImporterImpl.importFrom(ZipImporterImpl.java:125)
webapp_web.1.lgprfpvebods@moby | at org.jboss.shrinkwrap.impl.base.importer.zip.ZipImporterImpl.importFrom(ZipImporterImpl.java:103)
webapp_web.1.lgprfpvebods@moby | at org.jboss.shrinkwrap.impl.base.importer.zip.ZipImporterImpl.importFrom(ZipImporterImpl.java:49)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.spi.api.DefaultDeploymentFactory.setupUsingAppArtifact(DefaultDeploymentFactory.java:120)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.spi.api.DefaultDeploymentFactory.setup(DefaultDeploymentFactory.java:50)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.jaxrs.internal.DefaultJAXRSWarDeploymentFactory.create(DefaultJAXRSWarDeploymentFactory.java:41)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.container.Container.createDefaultDeployment(Container.java:491)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.container.Container.getDefaultDeployment(Container.java:503)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.container.Container.getDefaultDeploymentURL(Container.java:516)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.container.Container.getDefaultDeploymentClassLoader(Container.java:531)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.container.Container.setupXmlConfig(Container.java:364)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.container.Container.start(Container.java:330)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.Swarm.start(Swarm.java:97)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.Swarm.start(Swarm.java:45)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.container.Container.start(Container.java:324)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.Swarm.start(Swarm.java:107)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.Swarm.start(Swarm.java:45)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.Swarm.simpleMain(Swarm.java:149)
webapp_web.1.lgprfpvebods@moby | at org.wildfly.swarm.Swarm.main(Swarm.java:141)
webapp_web.1.lgprfpvebods@moby | ... 7 more
webapp_web.1.lgprfpvebods@moby | Caused by: java.lang.ClassNotFoundException: jdk.internal.reflect.ConstructorAccessorImpl from [Module "org.jboss.shrinkwrap:impl" from BootModuleLoader@4f2b503c for finders [BootstrapClasspathModuleFinder, BootstrapModuleFinder(org.wildfly.swarm.bootstrap:main), ClasspathModuleFinder, ApplicationModuleFinder(swarm.application:main), FlattishApplicationModuleFinder(swarm.application:flattish)]]
webapp_web.1.lgprfpvebods@moby | at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:198)
webapp_web.1.lgprfpvebods@moby | at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:363)
webapp_web.1.lgprfpvebods@moby | at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:351)
webapp_web.1.lgprfpvebods@moby | at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:93)
webapp_web.1.lgprfpvebods@moby | ... 40 more
Needs https://issues.jboss.org/browse/SWARM-1594 to be fixed
Can you create a branch with the error? Tried to change to 9-b181-jre-slim and that seemed to work? I guess you are compiling with java 9, and it seems it needs some changes to make that to work? Or maybe Im missing something when reproducing?