Maven: пропустить тест-компиляцию в жизненном цикле?

У меня есть проект, который я настроил для сборки с test-jar и обычным флягой, используя этот параметр:

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <executions>
                <execution>
                    <goals>
                        <goal>test-jar</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

Проблема в том, что всякий раз, когда я обновляю версию проекта в pom, мне нужно делать сборку с тестами, иначе maven не сможет найти тестовую флягу с правильной версией во время test-compile фраза. Много раз я хотел бы просто пропустить тесты, но из-за отсутствия тестовой банки фраза test-compile потерпит неудачу.

Я пытался использовать -Dmaven.test.skip=true, но это, похоже, не пропускает фазу test-compile. Есть ли способ пропустить это?

Ответы

Ответ 1

$ mvn clean install -Dmaven.test.skip=true \
      -Dmaven.site.skip=true -Dmaven.javadoc.skip=true

Ответ 2

Если вы хотите пропустить компиляцию тестовых источников, вы можете попробовать настроить плагин компилятора maven. Однако это не рекомендуется.

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.3.2</version>
            <executions>
                <execution>
                    <id>default-testCompile</id>
                    <phase>test-compile</phase>
                    <goals>
                        <goal>testCompile</goal>
                    </goals>
                    <configuration>
                        <skip>true</skip>
                    </configuration>
                </execution>
            </executions>
        </plugin>

Ответ 3

Просто добавьте -Dmaven.test.skip. Он даже не скомпилирует тест