Weird, our "check" build on TeamCity CI (which was passing) was only running "test" (plus coverage). I guess that was changed at some point. I'll look into the issue. Thanks for spotting that.
Cheers, Paul. On Sun, Jul 9, 2023 at 6:48 AM Spencer Allain via dev <dev@groovy.apache.org> wrote: > There are 5 related failures when attempting to run the gradlew check task > for the master groovy branch: > > Execution failed for task ':binary-compatibility:japicmpGroovyJson'. > Execution failed for task ':binary-compatibility:japicmpGroovyAnt'. > Execution failed for task ':binary-compatibility:japicmpGroovyAstbuilder'. > Execution failed for task ':binary-compatibility:japicmpGroovyCliCommons'. > Execution failed for task ':binary-compatibility:japicmpGroovyCliPicocli'. > > > A failure occurred while executing > me.champeau.gradle.japicmp.JApiCmpWorkAction > > Cannot invoke "java.lang.reflect.Method.invoke(Object, Object[])" > because "com.sun.xml.bind.v2.runtime.reflect.opt.Injector.defineClass" is > null > > > java.security.PrivilegedActionException: java.lang.NoSuchMethodException: > sun.misc.Unsafe.defineClass(java.lang.String,[B,int,int,java.lang.ClassLoader,java.security.ProtectionDomain) > at > java.base/java.security.AccessController.doPrivileged(AccessController.java:573) > at > com.sun.xml.bind.v2.runtime.reflect.opt.Injector.<clinit>(Injector.java:197) > at > com.sun.xml.bind.v2.runtime.reflect.opt.AccessorInjector.prepare(AccessorInjector.java:81) > at > com.sun.xml.bind.v2.runtime.reflect.opt.OptimizedAccessorFactory.get(OptimizedAccessorFactory.java:125) > at > com.sun.xml.bind.v2.runtime.reflect.Accessor$GetterSetterReflection.optimize(Accessor.java:402) > at > com.sun.xml.bind.v2.runtime.reflect.TransducedAccessor$CompositeTransducedAccessorImpl.<init>(TransducedAccessor.java:235) > at > com.sun.xml.bind.v2.runtime.reflect.TransducedAccessor.get(TransducedAccessor.java:175) > at > com.sun.xml.bind.v2.runtime.property.AttributeProperty.<init>(AttributeProperty.java:91) > at > com.sun.xml.bind.v2.runtime.property.PropertyFactory.create(PropertyFactory.java:108) > at > com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.<init>(ClassBeanInfoImpl.java:181) > at > com.sun.xml.bind.v2.runtime.JAXBContextImpl.getOrCreate(JAXBContextImpl.java:514) > at > com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:331) > at > com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:139) > at > com.sun.xml.bind.v2.runtime.JAXBContextImpl$JAXBContextBuilder.build(JAXBContextImpl.java:1156) > at > com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:165) > at > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native > Method) > at > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) > at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.base/java.lang.reflect.Method.invoke(Method.java:568) > at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:297) > at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:286) > at javax.xml.bind.ContextFinder.find(ContextFinder.java:409) > at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:721) > at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:662) > at > japicmp.output.xml.XmlOutputGenerator.createXmlDocumentAndSchema(XmlOutputGenerator.java:119) > at > japicmp.output.xml.XmlOutputGenerator.generate(XmlOutputGenerator.java:70) > at > me.champeau.gradle.japicmp.JApiCmpWorkerAction.generateOutput(JApiCmpWorkerAction.java:240) > at > me.champeau.gradle.japicmp.JApiCmpWorkerAction.run(JApiCmpWorkerAction.java:175) > at > me.champeau.gradle.japicmp.JApiCmpWorkAction.execute(JApiCmpWorkAction.java:9) > at > org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:63) > at > org.gradle.workers.internal.AbstractClassLoaderWorker$1.create(AbstractClassLoaderWorker.java:54) > at > org.gradle.workers.internal.AbstractClassLoaderWorker$1.create(AbstractClassLoaderWorker.java:48) > at > org.gradle.internal.classloader.ClassLoaderUtils.executeInClassloader(ClassLoaderUtils.java:100) > at > org.gradle.workers.internal.AbstractClassLoaderWorker.executeInClassLoader(AbstractClassLoaderWorker.java:48) > at > org.gradle.workers.internal.IsolatedClassloaderWorker.run(IsolatedClassloaderWorker.java:49) > at > org.gradle.workers.internal.IsolatedClassloaderWorker.run(IsolatedClassloaderWorker.java:30) > at > org.gradle.workers.internal.WorkerDaemonServer.run(WorkerDaemonServer.java:96) > at > org.gradle.workers.internal.WorkerDaemonServer.run(WorkerDaemonServer.java:65) > at > org.gradle.process.internal.worker.request.WorkerAction$1.call(WorkerAction.java:138) > at > org.gradle.process.internal.worker.child.WorkerLogEventListener.withWorkerLoggingProtocol(WorkerLogEventListener.java:41) > at > org.gradle.process.internal.worker.request.WorkerAction.run(WorkerAction.java:135) > at > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native > Method) > at > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) > at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.base/java.lang.reflect.Method.invoke(Method.java:568) > at > org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36) > at > org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24) > at > org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182) > at > org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164) > at > org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414) > at > org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64) > at > org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:49) > at > java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) > at > java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) > at java.base/java.lang.Thread.run(Thread.java:833) > Caused by: java.lang.NoSuchMethodException: > sun.misc.Unsafe.defineClass(java.lang.String,[B,int,int,java.lang.ClassLoader,java.security.ProtectionDomain) > at java.base/java.lang.Class.getMethod(Class.java:2227) > at > com.sun.xml.bind.v2.runtime.reflect.opt.Injector$3.run(Injector.java:201) > at > com.sun.xml.bind.v2.runtime.reflect.opt.Injector$3.run(Injector.java:197) > at > java.base/java.security.AccessController.doPrivileged(AccessController.java:569) > ... 54 more > > > From searching the web, it seems that either the additional legacy > jaxws-ri dependency (or some transitive dependency of that possibly) will > need to be explicitly added, or the code should be updated to use the new > jakarta package-named dependencies and include those instead. > > > There is also a codeNarc failure, but I don't belieive that has anything > to do with JDK 17 and is related to the old groovy.util.XmlParser that is > now only available at groovy.xml.XmlParser (which is strange since neither > Gradle 8.1.1 nor codeNarc 3.2.0 source code seem to have any references to > the old XmlParser path). > > Execution failed for task ':groovy-ant:codenarcMain'. > > A failure occurred while executing > org.gradle.api.plugins.quality.internal.CodeNarcAction > > java.lang.NoClassDefFoundError: groovy/util/XmlParser > > > > -Spencer >