Closed schowave closed 1 year ago
The 1.6 release was a mistake. The latest release version of jmolecules-integration
is 0.13. We upgraded to ArchUnit 1.0 in that release. The 1.0.1 upgrade is pending for 0.14, but I'd expect 0.13 to still work with that assuming they haven't shipped any breaking changes.
Thank you for the clarification, this is working :-)
When I use the latest version of archunit 1.0.1 together with jmolecules-integrations 1.6.0, I get the error:
org.gradle.api.internal.tasks.testing.TestSuiteExecutionException: Could not complete execution for Gradle Test Executor 6. at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:64) at java.base@19.0.1/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) at java.base@19.0.1/java.lang.reflect.Method.invoke(Method.java:578) at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36) at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24) at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33) at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94) at jdk.proxy1/jdk.proxy1.$Proxy2.stop(Unknown Source) at org.gradle.api.internal.tasks.testing.worker.TestWorker$3.run(TestWorker.java:193) at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:129) at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:100) at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:60) at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56) at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:113) at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:65) at app//worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69) at app//worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74) Caused by: org.junit.platform.commons.JUnitException: TestEngine with ID 'archunit' failed to discover tests at org.junit.platform.launcher.core.EngineDiscoveryOrchestrator.discoverEngineRoot(EngineDiscoveryOrchestrator.java:160) at org.junit.platform.launcher.core.EngineDiscoveryOrchestrator.discoverSafely(EngineDiscoveryOrchestrator.java:132) at org.junit.platform.launcher.core.EngineDiscoveryOrchestrator.discover(EngineDiscoveryOrchestrator.java:107) at org.junit.platform.launcher.core.EngineDiscoveryOrchestrator.discover(EngineDiscoveryOrchestrator.java:78) at org.junit.platform.launcher.core.DefaultLauncher.discover(DefaultLauncher.java:110) at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86) at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86) at org.junit.platform.launcher.core.SessionPerRequestLauncher.execute(SessionPerRequestLauncher.java:53) at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses(JUnitPlatformTestClassProcessor.java:99) at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$000(JUnitPlatformTestClassProcessor.java:79) at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop(JUnitPlatformTestClassProcessor.java:75) at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:62) ... 16 more Caused by: com.tngtech.archunit.junit.internal.ArchTestInitializationException: java.lang.reflect.InvocationTargetException at app//com.tngtech.archunit.junit.internal.ReflectionUtils.getValueOrThrowException(ReflectionUtils.java:93) at app//com.tngtech.archunit.junit.internal.ArchUnitTestDescriptor.getValue(ArchUnitTestDescriptor.java:118) at app//com.tngtech.archunit.junit.internal.ArchUnitTestDescriptor.resolveChildren(ArchUnitTestDescriptor.java:113) at app//com.tngtech.archunit.junit.internal.ArchUnitTestDescriptor.lambda$resolveField$4(ArchUnitTestDescriptor.java:99) at app//com.tngtech.archunit.junit.internal.ElementResolver.handleNewSegment(ElementResolver.java:126) at app//com.tngtech.archunit.junit.internal.ElementResolver.resolve(ElementResolver.java:80) at app//com.tngtech.archunit.junit.internal.ElementResolver$UnresolvedMember.ifUnresolved(ElementResolver.java:230) at app//com.tngtech.archunit.junit.internal.ArchUnitTestDescriptor.resolveField(ArchUnitTestDescriptor.java:99) at app//com.tngtech.archunit.junit.internal.ArchUnitTestDescriptor.lambda$createChildren$2(ArchUnitTestDescriptor.java:92) at java.base@19.0.1/java.util.ArrayList.forEach(ArrayList.java:1511) at app//com.tngtech.archunit.junit.internal.ArchUnitTestDescriptor.createChildren(ArchUnitTestDescriptor.java:92) at app//com.tngtech.archunit.junit.internal.ArchUnitTestDescriptor.createTestDescriptor(ArchUnitTestDescriptor.java:84) at app//com.tngtech.archunit.junit.internal.ArchUnitTestDescriptor.lambda$resolve$0(ArchUnitTestDescriptor.java:69) at app//com.tngtech.archunit.junit.internal.ElementResolver$RequestedButUnresolvedClass.ifRequestedButUnresolved(ElementResolver.java:202) at app//com.tngtech.archunit.junit.internal.ArchUnitTestDescriptor.resolve(ArchUnitTestDescriptor.java:69) at app//com.tngtech.archunit.junit.internal.ArchUnitTestEngine.lambda$resolveRequestedClasses$3(ArchUnitTestEngine.java:126) at java.base@19.0.1/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183) at java.base@19.0.1/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179) at java.base@19.0.1/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) at java.base@19.0.1/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625) at java.base@19.0.1/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) at java.base@19.0.1/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) at java.base@19.0.1/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150) at java.base@19.0.1/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) at java.base@19.0.1/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base@19.0.1/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) at app//com.tngtech.archunit.junit.internal.ArchUnitTestEngine.resolveRequestedClasses(ArchUnitTestEngine.java:126) at app//com.tngtech.archunit.junit.internal.ArchUnitTestEngine.discover(ArchUnitTestEngine.java:88) at app//org.junit.platform.launcher.core.EngineDiscoveryOrchestrator.discoverEngineRoot(EngineDiscoveryOrchestrator.java:152) ... 27 more Caused by: java.lang.reflect.InvocationTargetException at java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:79) at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:484) at com.tngtech.archunit.base.ReflectionUtils.newInstanceOf(ReflectionUtils.java:32) at com.tngtech.archunit.junit.internal.ReflectionUtils.newInstanceOf(ReflectionUtils.java:72) at com.tngtech.archunit.junit.internal.ReflectionUtils.getValueOrThrowException(ReflectionUtils.java:90) ... 55 more Caused by: java.lang.NoSuchMethodError: 'com.tngtech.archunit.library.Architectures$LayeredArchitecture com.tngtech.archunit.library.Architectures.layeredArchitecture()' at org.jmolecules.archunit.JMoleculesArchitectureRules.onionArchitectureSimple(JMoleculesArchitectureRules.java:221) at org.jmolecules.archunit.JMoleculesArchitectureRules.ensureOnionSimple(JMoleculesArchitectureRules.java:129) at com.breuninger.evaluate.advice.architecture.HexagonArchitectureArchUnitTest.<init>(HexagonArchitectureArchUnitTest.kt:30) at java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:67) ... 60 more
You can check this with the repository https://gitlab.com/jamietanna/spring-boot-onion-architecture-example/-/blob/main/build.gradle and update the versions respectively.