2014-04-23 21 views
1

问题在标题中。 我sucess首先做一个罐子(项目包装罐子)....然后我的id之前将它做maven-shade-plugin:制作一个罐子,而我们在战争项目?

MVN清洁

,以保持它在其他地方。

或者我是一个在战争中的项目,所以我不得不重新命名项目包装到战争的话,我必须做一个

MVN全新安装

我得到了我的战争。然后导入我的战争中使用的第一个罐子。

有没有更清晰的方式做到这一点与Maven的阴影插件来生成战争和罐子。

<plugin> 
<groupId>org.apache.maven.plugins</groupId> 
<artifactId>maven-shade-plugin</artifactId> 
<version>2.1</version> 
<executions> 
    <execution> 
     <phase>package</phase> 
     <goals> 
      <goal>shade</goal> 
     </goals> 
     <configuration> 
      <finalName>${project.artifactId}-final</finalName> 

       <transformers> 
        <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> 
          <mainClass>com.clb.genomic.lyon.external.MainExternal</mainClass> 
        </transformer> 
        <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> 
         <resource>META-INF/spring.handlers</resource> 
        </transformer> 
        <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> 
          <resource>META-INF/spring.schemas</resource> 
        </transformer> 
        <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> 
         <resource>META-INF/spring.tooling</resource> 
        </transformer> 
       </transformers> 
     </configuration> 
    </execution> 
</executions> 

的包装遵循项目描述

战/罐

在文件的开头,我每次都要我把Maven来改变它。

谢谢

+0

我想你想你的一些代码添加到一个罐子,把它添加到战争之后? – Stefan

+0

我想用Runtime.exec从Spring执行我的jar包http://stackoverflow.com/questions/23223909/runtime-exec-trying-to-load-spring-beans-in-jar-of-your - 你的战争项目。这是工作时,我使用我的2步法,但它有点麻烦。我希望在创建战争的同时,仅使用mvn clean install生成包装依赖关系的jar,然后在我的web应用程序中从RunTime.exec()调用它来完成一些后台进程(邮件,解析大文件)... – ZheFrench

回答

0

对我来说,你正试图在同一个maven模块中构建两个产品(一个jar和一个war)。 我真的不明白你的要求,在同一个模块中有这个吗?以及为什么你使用maven shade插件?

这里的方式是我将跟随首先制作一个罐和第二使正在使用该先前刚刚生成罐子战争:定义2个模块

  • 父模块(包装“POM”): module_myjar和module_mywar
    • 子模块module_myjar(包装“罐子”)
    • 子子模块module_mywar(包装“战争”),该模块可包括水瓶中的依赖。
相关问题