我正在使用maven来配置maven-ear-plugin。当我说jboss版本是5时,我得到了以下异常(参见下面标签下的代码)。如果我将版本替换为4.2,它就可以工作
<build>
<finalName>tactical</finalName>
<plugins>
<plugin>
<artifactId>maven-ear-plugin</artifactId>
<configuration>
<version>5</version>
<defaultJavaBundleDir>lib</defaultJavaBundleDir>
<jboss>
<version>5</version>
<loader-repository>seam.jboss.org:loader=tactical</loader-repository>
</jboss>
<modules>
<ejbModule>
<groupId>${project.groupId}</groupId>
<artifactId>tactical-jar</artifactId>
</ejbModule>
</modules>
</configuration>
</plugin>
</plugins>
</build>为什么它适用于jboss 4.2而不适用于5。什么??
我得到了以下异常:
[INFO] Failed to initialize JBoss configuration
Embedded error: Invalid JBoss configuration, version[5] is not supported.
[INFO] ------------------------------------------------------------------------
[INFO] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to initialize JBoss configuration
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:583)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:49
9)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:478)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.jav
a:330)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:291)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:287)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.maven.plugin.MojoExecutionException: Failed to initialize JBoss configuration
at org.apache.maven.plugin.ear.AbstractEarMojo.execute(AbstractEarMojo.java:159)
at org.apache.maven.plugin.ear.GenerateApplicationXmlMojo.execute(GenerateApplicationXmlMojo.java:96)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558)
... 16 more
Caused by: org.apache.maven.plugin.ear.EarPluginException: Invalid JBoss configuration, version[5] is not supported.
at org.apache.maven.plugin.ear.JbossConfiguration.<init>(JbossConfiguration.java:95)
at org.apache.maven.plugin.ear.AbstractEarMojo.initializeJbossConfiguration(AbstractEarMojo.java:296)
at org.apache.maven.plugin.ear.AbstractEarMojo.execute(AbstractEarMojo.java:155)
... 19 more
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2 seconds任何想法。谢谢
发布于 2010-03-25 05:23:59
您使用的是哪个版本的插件?最新的source code表明这应该是可行的。
120 else if ( version.equals( JbossConfiguration.VERSION_5 ) )
121 {
122 this.jbossFive = true;
123 }
124 else
125 {
126 throw new EarPluginException(
127 "Invalid JBoss configuration, version[" + version + "] is not supported." );
128 }发布于 2010-03-25 05:41:19
maven ear插件的2.3.2版和更高版本中提供了对JBoss 5的支持(请参阅MEAR-102)。使用您当前的配置(没有指定插件的版本,出于构建重现性的考虑,不建议这样做),您将获得2.3.1版的插件。您可以通过运行以下命令来打印“有效pom”以进行检查:
mvn help:effective-pom对于您的情况,我建议使用最新版本:
<build>
<finalName>tactical</finalName>
<plugins>
<plugin>
<artifactId>maven-ear-plugin</artifactId>
<!-- Lock down plugin version for build reproducibility -->
<version>2.4.1</version>
<configuration>
<version>5</version>
<defaultJavaBundleDir>lib</defaultJavaBundleDir>
<jboss>
<version>5</version>
<loader-repository>seam.jboss.org:loader=tactical</loader-repository>
</jboss>
<modules>
<ejbModule>
<groupId>${project.groupId}</groupId>
<artifactId>tactical-jar</artifactId>
</ejbModule>
</modules>
</configuration>
</plugin>
</plugins>
</build>https://stackoverflow.com/questions/2511469
复制相似问题