2010-09-30 28 views
2

我们已经在我们的项目中用ejbs替换了Spring事务和安全(服务外观)。之前我们使用maven ejb插件将相关的库包含在classpath中。在maven中准备Ear文件

 <plugin> 
      <artifactId>maven-ejb-plugin</artifactId> 
      <configuration> 
       <archive> 
        <manifest> 
         <addClasspath>true</addClasspath> 
        </manifest> 
       </archive> 
      </configuration> 
     </plugin> 

它生成这样的EJB产物,所有jar依赖关系(在Jboss的4.2耳夹中的所有jar文件)MANIFEST.MF文件。

因为我们现在已经删除了ejbs,所以会话外观是一个jar工件。我不知道,如何在使用maven的所有jar依赖关系在会话外观中生成MANIFEST.MF。

我必须指定includeInApplicationXml属性包含在application.xml文件如Java模块的jar文件的选项,但我将不得不指定它为每一个罐子这是jar文件的依赖一直在改变一个繁琐的过程。

我们有没有办法包含jar文件依赖项,而不将它们列在application.xml中。比方说,我们只在application.xml中包含sessionfacade.jar依赖项,并生成MANIFEST.MF文件,该文件具有所有其他jar的依赖性(使用maven-ejb-plugin时发生的方式)。

任何帮助将不胜感激。提前致谢。

回答

1

您可以使用相同的Maven配置,但与Maven的JAR-插件:

<plugin> 
    <artifactId>maven-jar-plugin</artifactId> 
    <configuration> 
     <archive> 
      <manifest> 
       <addClasspath>true</addClasspath> 
      </manifest> 
     </archive> 
    </configuration> 
</plugin> 

这将产生与类路径元素的所有依赖的MANIFEST.MF。

+0

谢谢!这正是我期待的。 – 2010-09-30 08:34:04

+0

这适用于可以使用清单的几乎所有包装插件。请参阅http://maven.apache.org/shared/maven-archiver/index.html – Salandur 2010-09-30 12:18:36