我有一个项目,我们在单元测试期间写文件。它们应写入target/testData
。如果我使用IntelliJ Testrunner运行测试,这可以很好用。如果我运行mvn test
它会成功运行,但它不会创建文件。怎么了?
这是我的Surefire配置:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<systemPropertyVariables>
<myOutDir>${project.build.outputDirectory}</myOutDir>
</systemPropertyVariables>
<forkMode>never</forkMode>
<workingDirectory>${project.build.outputDirectory}/</workingDirectory>
</configuration>
</plugin>
该文件是在以下目录中创建的:
private static final String resultDirName =
String.format("%s%stestData", System.getProperty("myOutDir"), File.separator);
并像那样使用:
resultDir = new File(resultDirName);
if (!resultDir.exists() && !resultDir.isDirectory()) {
resultDir.mkdir();
}
if (result != null) {
String name = "someName
File resultFile = new File(resultDir, name);
ImageIO.write(result, "JPEG", resultFile);
}