繁体   English   中英

maven-shade-plugin:在战争中制作一个罐子吗?

[英]maven-shade-plugin : make a jar whereas we are in war Project?

问题在标题中。 我必须先做一个罐子(项目包装罐子)。...然后我先移开它

MVN清洁

保留在其他地方

或者我是一个战争项目,所以我必须将项目包装重命名为战争,然后我必须做一个

mvn全新安装

我打了仗。 然后,我从战争中导入要使用的第一个罐子。

有没有一种更清晰的方法可以使用Maven Shade插件来生成war和jar。

<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时都必须对其进行更改。

谢谢

对我来说,您正在尝试在同一Maven模块中构建两个产品(一个罐子和一个战争)。 我真的不明白您要求在同一模块中使用它吗? 为什么要使用Maven Shade插件?

这是我首先制作一个罐子,然后使用先前刚生成的罐子进行战争的方法:

  • 定义两个模块的父模块(包装“ pom”):module_myjar和module_mywar
    • 子模块module_myjar(包装“ jar”)
    • 一个子子模块module_mywar(包装“ war”),该模块可能包含jar作为依赖项。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM