Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使Maven模块只在父模块部署到测试阶段时运行?_Java_Maven_Testing_Build_Multi Module - Fatal编程技术网

Java 如何使Maven模块只在父模块部署到测试阶段时运行?

Java 如何使Maven模块只在父模块部署到测试阶段时运行?,java,maven,testing,build,multi-module,Java,Maven,Testing,Build,Multi Module,我在做一个多模块的项目。我们的一个模块是测试其他模块的项目 第一个问题:这是一个好的实践吗 Maven构建生命周期阶段包括: 验证 编译 测试 package 集成测试 验证 安装 部署 在安装或部署父模块时,如何使测试模块只运行到测试阶段,即跳过软件包和后续阶段?因为这个模块的唯一目的是测试其他模块。我假设它是一个jar项目。看这张照片 将maven jar插件、maven安装插件和maven部署插件插件的默认执行绑定到pom.xml中的none阶段 <plugin> &l

我在做一个多模块的项目。我们的一个模块是测试其他模块的
项目

第一个问题:这是一个好的实践吗

Maven构建生命周期阶段包括:

  • 验证
  • 编译
  • 测试
  • package
  • 集成测试
  • 验证
  • 安装
  • 部署

  • 在安装或部署父模块时,如何使
    测试
    模块只运行到
    测试
    阶段,即跳过软件包和后续阶段?因为这个模块的唯一目的是测试其他模块。

    我假设它是一个
    jar
    项目。看这张照片

    maven jar插件
    maven安装插件
    maven部署插件
    插件的默认执行绑定到
    pom.xml中的
    none
    阶段

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <version>2.6</version>
        <executions>
            <execution>
                <id>default-jar</id>
                <phase>none</phase>
            </execution>
        </executions>
    </plugin>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-install-plugin</artifactId>
        <version>2.5.2</version>
        <executions>
            <execution>
                <id>default-install</id>
                <phase>none</phase>
            </execution>
        </executions>
    </plugin>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-deploy-plugin</artifactId>
        <version>2.8.2</version>
        <executions>
            <execution>
                <id>default-deploy</id>
                <phase>none</phase>
            </execution>
        </executions>
    </plugin>
    
    
    org.apache.maven.plugins
    maven jar插件
    2.6
    默认jar
    没有一个
    org.apache.maven.plugins
    maven安装插件
    2.5.2
    默认安装
    没有一个
    org.apache.maven.plugins
    maven部署插件
    2.8.2
    默认部署
    没有一个
    
    您正在运行的目标是什么?部署
    目标?@YuriG。是:当我在我的父项上运行
    deploy
    时,我希望我的
    tests
    项目得到验证、编译和测试,但不打包或安装,等等。每个插件中也可以使用
    true
    。@sp00m-是的,我没有想到这一点。