如何在Maven中跳过一个子模块的安装?

ycl3bljg  于 12个月前  发布在  Maven
关注(0)|答案(3)|浏览(194)

我有一个maven项目,其中有很多子模块。我需要使用“mvn clean install”将其安装到本地仓库,但有些子模块我根本不想安装。如果我在父项目上运行“mvn clean install”,所有子模块也会安装。
如何跳过一个子模块的安装?

djmepvbi

djmepvbi1#

您可以创建一个单独的profile来构建特定的模块。其他模块将被排除在外。请参见下面的示例:

<modules>
        <module>module-1</module>
        <module>module-2</module>  
    ...
    </modules>

<profiles>
     <profile>
         <id>specific-build-name</id>
         <modules>
             <module>module-1</module>
             <module>module-2</module>
             ...
             <module>module-with-tests</module>
         </modules> 
     </profile>
</profiles>

...

字符串

3pmvbmvn

3pmvbmvn2#

如果你的子模块和子目录名在不同的目录下,
将“subdirName”的排除添加到pom.xml中的maven-jar-plugin:

<plugin>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.3.1</version>
    <executions>
      <execution>
        <id>default-jar</id>
        <phase>package</phase>
        <goals>
          <goal>jar</goal>
        </goals>
        <configuration>
          <excludes>
            <exclude>**/subdirName/*</exclude>
          </excludes>
        </configuration>
      </execution>
    </executions>
</plugin>

字符串

yruzcnhs

yruzcnhs3#

从Maven 2.4开始,您可以将以下插件配置添加到您想要跳过安装的子模块:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-install-plugin</artifactId>
    <configuration>
        <skip>true</skip>
    </configuration>
</plugin>

字符串

相关问题