You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by "Jonathan Gallimore (Jira)" <ji...@apache.org> on 2024/01/05 13:10:00 UTC
[jira] [Commented] (TOMEE-4294) TomEE doesn't start in tomee-embedded-maven-plugin when mp-common is present
[ https://issues.apache.org/jira/browse/TOMEE-4294?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17803536#comment-17803536 ]
Jonathan Gallimore commented on TOMEE-4294:
-------------------------------------------
Thanks for this, and the reproducer. Taking a look.
> TomEE doesn't start in tomee-embedded-maven-plugin when mp-common is present
> ----------------------------------------------------------------------------
>
> Key: TOMEE-4294
> URL: https://issues.apache.org/jira/browse/TOMEE-4294
> Project: TomEE
> Issue Type: Bug
> Affects Versions: 9.1.2
> Reporter: Markus Jung
> Assignee: Jonathan Gallimore
> Priority: Major
> Attachments: tomee-embedded-mp.zip
>
>
> The following exception is thrown when trying to run tomee-embedded through the maven plugin when adding mp-common:
> {code:java}
> Caused by: java.lang.NoSuchMethodError: 'void jakarta.enterprise.inject.spi.BeforeBeanDiscovery.addAnnotatedType(jakarta.enterprise.inject.spi.AnnotatedType)'
> at org.apache.bval.cdi.BValExtension.addBvalBinding (BValExtension.java:112)
> 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.apache.webbeans.event.ObserverMethodImpl.invoke (ObserverMethodImpl.java:410)
> at org.apache.webbeans.event.ContainerEventObserverMethodImpl.invoke (ContainerEventObserverMethodImpl.java:86)
> at org.apache.webbeans.event.ObserverMethodImpl.notify (ObserverMethodImpl.java:371)
> at org.apache.webbeans.event.NotificationManager.invokeObserverMethod (NotificationManager.java:1146)
> at org.apache.webbeans.event.NotificationManager.doFireSync (NotificationManager.java:1009)
> at org.apache.webbeans.event.NotificationManager.doFireEvent (NotificationManager.java:952)
> at org.apache.webbeans.event.NotificationManager.fireEvent (NotificationManager.java:928)
> at org.apache.webbeans.container.BeanManagerImpl.fireEvent (BeanManagerImpl.java:495)
> at org.apache.webbeans.container.BeanManagerImpl.fireLifecycleEvent (BeanManagerImpl.java:490)
> at org.apache.webbeans.config.BeansDeployer.fireBeforeBeanDiscoveryEvent (BeansDeployer.java:805)
> at org.apache.webbeans.config.BeansDeployer.deploy (BeansDeployer.java:244)
> at org.apache.openejb.cdi.OpenEJBLifecycle.startApplication (OpenEJBLifecycle.java:196)
> at org.apache.openejb.cdi.ThreadSingletonServiceImpl.initialize (ThreadSingletonServiceImpl.java:268)
> at org.apache.openejb.cdi.CdiBuilder.build (CdiBuilder.java:43)
> at org.apache.openejb.assembler.classic.Assembler.createApplication (Assembler.java:974)
> at org.apache.openejb.assembler.classic.Assembler.createApplication (Assembler.java:762)
> at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal (TomcatWebAppBuilder.java:1340)
> at org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart (TomcatWebAppBuilder.java:1162)
> at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent (GlobalListenerSupport.java:134)
> at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent (LifecycleBase.java:123)
> at org.apache.catalina.core.StandardContext.startInternal (StandardContext.java:5085)
> at org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:183)
> at org.apache.catalina.core.ContainerBase.addChildInternal (ContainerBase.java:726)
> at org.apache.catalina.core.ContainerBase.addChild (ContainerBase.java:698)
> at org.apache.catalina.core.StandardHost.addChild (StandardHost.java:747)
> at org.apache.tomee.catalina.TomcatWebAppBuilder.deployWar (TomcatWebAppBuilder.java:687)
> at org.apache.tomee.catalina.TomcatWebAppBuilder.deployWebApps (TomcatWebAppBuilder.java:616)
> at org.apache.tomee.catalina.deployment.TomcatWebappDeployer.deploy (TomcatWebappDeployer.java:47)
> at org.apache.tomee.embedded.Container.deploy (Container.java:876)
> at org.apache.openejb.maven.plugins.TomEEEmbeddedMojo.doDeploy (TomEEEmbeddedMojo.java:529)
> at org.apache.openejb.maven.plugins.TomEEEmbeddedMojo.execute (TomEEEmbeddedMojo.java:445)
> at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:126)
> at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:328)
> at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:316)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:212)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:174)
> at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:75)
> at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:162)
> at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:159)
> at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
> at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:73)
> at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:53)
> at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:118)
> at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
> at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
> at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
> at org.apache.maven.cli.MavenCli.execute (MavenCli.java:906)
> at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:283)
> at org.apache.maven.cli.MavenCli.main (MavenCli.java:206)
> 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.launchEnhanced (Launcher.java:283)
> at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:226)
> at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:407)
> at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:348){code}
> Setting the containerProperty tomee.mp.scan=true causes a different stacktrace but looks to have the same root cause:
> {code:java}
> Caused by: java.lang.NoSuchMethodError: 'void jakarta.enterprise.inject.spi.BeforeBeanDiscovery.addAnnotatedType(jakarta.enterprise.inject.spi.AnnotatedType)'
> at org.apache.tomee.microprofile.opentracing.MPOpenTracingCDIExtension.observeBeforeBeanDiscovery (MPOpenTracingCDIExtension.java:33)
> 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.apache.webbeans.event.ObserverMethodImpl.invoke (ObserverMethodImpl.java:410)
> at org.apache.webbeans.event.ContainerEventObserverMethodImpl.invoke (ContainerEventObserverMethodImpl.java:86)
> at org.apache.webbeans.event.ObserverMethodImpl.notify (ObserverMethodImpl.java:371)
> at org.apache.webbeans.event.NotificationManager.invokeObserverMethod (NotificationManager.java:1146)
> at org.apache.webbeans.event.NotificationManager.doFireSync (NotificationManager.java:1009)
> at org.apache.webbeans.event.NotificationManager.doFireEvent (NotificationManager.java:952)
> at org.apache.webbeans.event.NotificationManager.fireEvent (NotificationManager.java:928)
> at org.apache.webbeans.container.BeanManagerImpl.fireEvent (BeanManagerImpl.java:495)
> at org.apache.webbeans.container.BeanManagerImpl.fireLifecycleEvent (BeanManagerImpl.java:490)
> at org.apache.webbeans.config.BeansDeployer.fireBeforeBeanDiscoveryEvent (BeansDeployer.java:805)
> at org.apache.webbeans.config.BeansDeployer.deploy (BeansDeployer.java:244)
> at org.apache.openejb.cdi.OpenEJBLifecycle.startApplication (OpenEJBLifecycle.java:196)
> at org.apache.openejb.cdi.ThreadSingletonServiceImpl.initialize (ThreadSingletonServiceImpl.java:268)
> at org.apache.openejb.cdi.CdiBuilder.build (CdiBuilder.java:43)
> at org.apache.openejb.assembler.classic.Assembler.createApplication (Assembler.java:974)
> at org.apache.openejb.assembler.classic.Assembler.createApplication (Assembler.java:762)
> at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal (TomcatWebAppBuilder.java:1340)
> at org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart (TomcatWebAppBuilder.java:1162)
> at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent (GlobalListenerSupport.java:134)
> at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent (LifecycleBase.java:123)
> at org.apache.catalina.core.StandardContext.startInternal (StandardContext.java:5085)
> at org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:183)
> at org.apache.catalina.core.ContainerBase.addChildInternal (ContainerBase.java:726)
> at org.apache.catalina.core.ContainerBase.addChild (ContainerBase.java:698)
> at org.apache.catalina.core.StandardHost.addChild (StandardHost.java:747)
> at org.apache.tomee.catalina.TomcatWebAppBuilder.deployWar (TomcatWebAppBuilder.java:687)
> at org.apache.tomee.catalina.TomcatWebAppBuilder.deployWebApps (TomcatWebAppBuilder.java:616)
> at org.apache.tomee.catalina.deployment.TomcatWebappDeployer.deploy (TomcatWebappDeployer.java:47)
> at org.apache.tomee.embedded.Container.deploy (Container.java:876)
> at org.apache.openejb.maven.plugins.TomEEEmbeddedMojo.doDeploy (TomEEEmbeddedMojo.java:529)
> at org.apache.openejb.maven.plugins.TomEEEmbeddedMojo.execute (TomEEEmbeddedMojo.java:445)
> at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:126)
> at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:328)
> at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:316)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:212)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:174)
> at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:75)
> at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:162)
> at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:159)
> at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
> at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:73)
> at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:53)
> at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:118)
> at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
> at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
> at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
> at org.apache.maven.cli.MavenCli.execute (MavenCli.java:906)
> at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:283)
> at org.apache.maven.cli.MavenCli.main (MavenCli.java:206)
> 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.launchEnhanced (Launcher.java:283)
> at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:226)
> at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:407)
> at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:348){code}
> System information:
> {code:java}
> ➜ mvn --version
> Apache Maven 3.9.5 (57804ffe001d7215b5e7bcb531cf83df38f93546)
> Maven home: /home/markus/.sdkman/candidates/maven/current
> Java version: 17.0.8, vendor: Eclipse Adoptium, runtime: /home/markus/.sdkman/candidates/java/17.0.8-tem
> Default locale: en_US, platform encoding: UTF-8
> OS name: "linux", version: "6.5.0-14-generic", arch: "amd64", family: "unix {code}
>
> I've attached a reproducer, simply run mvn package tomee-embedded:run
> The exception isn't being thrown as soon as I remove the mp-common dependency. Starting TomEE microprofile the normal standalone way also appears to work fine.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)