maven-embedded-glassfish-plugin выдает исключение ClassNotFoundException

Я настроил свой файл pom для использования maven-embedded-glassfish-plugin. На самом деле это артефакт jersey-webapp, который генерирует проект. Раздел плагина pom выглядит следующим образом:

org.glassfish maven-embedded-glassfish-plugin ${glassfish.version} embedded-glassfish /Users/vdevigere/Projects/ShoppingSite/shoppingsite-ws/target/${project.build.finalName}.war test true 8080 com.sun .jersey jersey-servlet ${jersey.version} javax.servlet javax.servlet-api 3.0.1

Когда я делаю mvn embedded-glassfish:run, я получаю трассировку стека, сообщающую мне, что javax.ejb.Stateless не может быть найден. Трассировка стека ниже

Я подтвердил, что javax.ejb.Stateless является частью Glassfish-embedded-web, которая включена в качестве зависимости области тестирования.

org.glassfish.extras glassfish-embedded-web ${glassfish.version} test

Я в своем уме, почему это не работает. Я могу развернуть приложение на реальном сервере приложений Glassfish.

Чтобы исправить это, вам нужно добавить следующую дополнительную зависимость в список зависимостей в зависимостях maven-embedded-glassfish-plugin в pom.xml:


person VDev    schedule 09.11.2011    source источник


Ответы (1)


EVERE: исключение при вызове метода запуска класса com.sun.enterprise.web.WebApplication : java.lang.NoClassDefFoundError: javax/ejb/Stateless на com.sun.enterprise.web.WebApplication.start(WebApplication.java:138) на org.glassfish.internal.data.EngineRef.start(EngineRef.java:130) в org.glassfish.internal.data.ModuleInfo.start(ModuleInfo.java:269) в org.glassfish.internal.data.ApplicationInfo.start(ApplicationInfo.java:294) в com.sun.enterprise.v3.server.ApplicationLifecycle .deploy(ApplicationLifecycle.java:462) в com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:240) в org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:382) в com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:355) на com.sun.enterprise. v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:370) в com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1064) в com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1200 (CommandRunnerImpl.java:96) в com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1244) в com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java :1232) на com.sun.enterprise.admin.cli.embeddable.DeployerImpl.deploy(DeployerImpl.java:129) на com.sun.enterprise.admin.cli.embeddable.DeployerImpl.deploy(DeployerImpl.java:105) на org.glassfish.maven.PluginUtil.doDeploy(PluginUtil.java:106) в sun.reflect.NativeMethodAccessorImpl.invoke0(собственный метод) в sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) в sun.reflect.DelegatingMethodAccessorImpl. invoke(DelegatingMethodAccessorImpl.java:25) в java.lang.reflect.Method.invoke(Metho d.java:597) в org.glassfish.maven.AbstractDeployMojo.doDeploy(AbstractDeployMojo.java:239) в org.glassfish.maven.RunMojo.execute(RunMojo.java:68) в org.apache.maven.plugin.DefaultPluginManager .executeMojo(DefaultPluginManager.java:490) в org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694) в org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:569) в org. apache.maven.жизненный цикл. DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:539) в org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387) в org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348) в org. .apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180) в org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328) в org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138) ) в org.apache.maven.cli.MavenCli.main(MavenCli.java:362) в org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60) в sun.reflect.NativeMethodAccessorImpl.invoke0( Собственный метод) в sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) в sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) в java.lang.reflect.Method.invoke(Method.java:597) в организации .codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) в org.codehaus.classworlds.Launcher.launch(Launcher.java:255) в org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) в org.codehaus.classworlds.Launcher.main(Launcher.java:375)

    <dependency>
       <groupId>org.glassfish</groupId>
       <artifactId>javax.ejb</artifactId>
       <version>${glassfish.version}</version>
    </dependency>
person theJC    schedule 22.05.2012