You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by "Ben Weidig (Jira)" <ji...@apache.org> on 2021/04/24 09:58:00 UTC

[jira] [Assigned] (TAP5-2677) @PostConstruct (javax.annotation) is missing with JDK 11 & <5.7

     [ https://issues.apache.org/jira/browse/TAP5-2677?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ben Weidig reassigned TAP5-2677:
--------------------------------

    Assignee: Ben Weidig

> @PostConstruct (javax.annotation) is missing with JDK 11 & <5.7
> ---------------------------------------------------------------
>
>                 Key: TAP5-2677
>                 URL: https://issues.apache.org/jira/browse/TAP5-2677
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-ioc
>    Affects Versions: 5.6.4
>            Reporter: Ben Weidig
>            Assignee: Ben Weidig
>            Priority: Major
>
> It looks like a
> {code:java}
> compile "javax.annotation:javax.annotation-api:1.3.2"
> {code}
> is missing for < 5.7 in ioc build.gradle, but I have to make sure the error isn't on my side.
> Usually the dependency (or an equivalent) is pulled by other dependencies, but I started a new ioc/core non-web-app with minimal dependencies, and it crashes on startup:
> {code:java}
> 2021-04-24 11:49:05,903: ERROR [org.apache.tapestry5.ioc.Registry]: javax/annotation/PostConstruct
> 2021-04-24 11:49:05,903: ERROR [org.apache.tapestry5.ioc.Registry]: Operations trace:
> 2021-04-24 11:49:05,903: ERROR [org.apache.tapestry5.ioc.Registry]: [ 1] Creating non-proxied instance of service ServiceConfigurationListenerHub
> 2021-04-24 11:49:05,903: ERROR [org.apache.tapestry5.ioc.Registry]: [ 2] Creating plan to instantiate org.apache.tapestry5.ioc.services.ServiceConfigurationListenerHub via public org.apache.tapestry5.ioc.services.ServiceConfigurationListenerHub(java.util.List)
> Exception in thread "main" java.lang.NoClassDefFoundError: javax/annotation/PostConstruct
> 	at org.apache.tapestry5.ioc.internal.util.InternalUtils.extendPlanForPostInjectionMethods(InternalUtils.java:1502)
> 	at org.apache.tapestry5.ioc.internal.util.InternalUtils.access$300(InternalUtils.java:50)
> 	at org.apache.tapestry5.ioc.internal.util.InternalUtils$20.invoke(InternalUtils.java:1382)
> 	at org.apache.tapestry5.ioc.internal.util.InternalUtils$20.invoke(InternalUtils.java:1366)
> 	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:82)
> 	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:72)
> 	at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1265)
> 	at org.apache.tapestry5.ioc.internal.util.InternalUtils.createConstructorConstructionPlan(InternalUtils.java:1363)
> 	at org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.getPlan(ConstructorServiceCreator.java:52)
> 	at org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:62)
> 	at org.apache.tapestry5.ioc.internal.ModuleImpl$4.invoke(ModuleImpl.java:295)
> 	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:82)
> 	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:72)
> 	at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1265)
> 	at org.apache.tapestry5.ioc.internal.ModuleImpl.create(ModuleImpl.java:344)
> 	at org.apache.tapestry5.ioc.internal.ModuleImpl.access$100(ModuleImpl.java:40)
> 	at org.apache.tapestry5.ioc.internal.ModuleImpl$1.invoke(ModuleImpl.java:198)
> 	at org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withWrite(ConcurrentBarrier.java:139)
> 	at org.apache.tapestry5.ioc.internal.ModuleImpl$2.invoke(ModuleImpl.java:215)
> 	at org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:83)
> 	at org.apache.tapestry5.ioc.internal.ModuleImpl.findOrCreate(ModuleImpl.java:221)
> 	at org.apache.tapestry5.ioc.internal.ModuleImpl.getService(ModuleImpl.java:112)
> 	at org.apache.tapestry5.ioc.internal.RegistryImpl.getService(RegistryImpl.java:497)
> 	at org.apache.tapestry5.ioc.internal.RegistryImpl.getServiceByTypeAlone(RegistryImpl.java:788)
> 	at org.apache.tapestry5.ioc.internal.RegistryImpl.getServiceByTypeAndMarkers(RegistryImpl.java:802)
> 	at org.apache.tapestry5.ioc.internal.RegistryImpl.getService(RegistryImpl.java:760)
> 	at org.apache.tapestry5.ioc.internal.RegistryImpl.<init>(RegistryImpl.java:212)
> 	at org.apache.tapestry5.ioc.RegistryBuilder.build(RegistryBuilder.java:181)
> 	at org.apache.tapestry5.internal.TapestryAppInitializer.createRegistry(TapestryAppInitializer.java:173)
> 	at net.netzgut.integral.starter.IntegralStarter.startRegistry(IntegralStarter.java:201)
> 	at net.netzgut.integral.starter.IntegralStarter.start(IntegralStarter.java:102)
> 	at App.main(App.java:12)
> Caused by: java.lang.ClassNotFoundException: javax.annotation.PostConstruct
> 	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
> 	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
> 	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
> 	... 32 more
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)