我是Java / Maven的新手。我有一个标准的maven项目结构,我编写了一些我想在一些测试脚本中使用的辅助类,这些类在src/test/java
中。在我mvn clean install
之后,我可以看到这些类在target/test-classes
中,但在我的脚本中虽然我使用了target
中CLASSPATH
目录的绝对路径,但是我看到Could not find or load main class ...
。
例如,我有src/test/java/validation/CrossValidator.java
,在我的脚本中我使用java -cp $CLASSPATH validation.CrossValidator ...
,其中CLASSPATH
是target
目录的绝对路径。
任何人都可以指导我完成这项工作吗?我知道我可以简单地将这些类移动到src/java/main
,但我不希望这些类成为库jar
的一部分,因为它们不会在运行时使用。
先谢谢。
答案 0 :(得分:0)
您可以添加maven-jar-plugin的辅助执行,从项目中构建测试jar:
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
这将创建一个包含test-jar
分类器的jar,其中包含所有测试类。
更多详细信息,请访问Create test JAR。