Я сделал, чтобы Знаток создал с тремя модулями.
Причина регрессионные тесты не являются просто частью модуля B, состоит в том, что они должны быть в состоянии работать против нескольких версий A и B для обеспечения назад совместимости. Я хочу быть в состоянии работать deploy
от верхнего уровня создают для создания A.jar и B.jar, но не C.jar. Действительно ли это возможно?
<properties>
<maven.deploy.skip>true</maven.deploy.skip>
</properties>
Если вам вообще не нужно создавать JAR, вы можете добавить еще два свойства:
<jar.skipIfEmpty>true</jar.skipIfEmpty>
<maven.install.skip>true</maven.install.skip>
Обратите внимание, что вам все еще нужен maven.deploy.skip
, иначе сборка завершится ошибкой во время развертывания.
Подключаемый модуль развертывания maven включает параметры пропуска , которые предотвращают развертывание артефактов.
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
Вы можете попробовать добавить это в проект C.
Используйте упаковку типа pom
для C и перепривяжите все необходимые плагины:
<project>
...
<packaging>pom</packaging>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<executions>
<execution>
<id>test-compile</id>
<phase>test-compile</phase>
<goals>
<goal>testCompile</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>process-test-resources</id>
<phase>process-test-resources</phase>
<goals>
<goal>testResources</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<executions>
<execution>
<id>test</id>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
</execution>
</executions>
</plugin>
...
</plugins>
...
</build>
...
</project>
Используйте ниже для модуля C:
<packaging>pom</packaging>