gpt4 book ai didi

java - 如何将测试生成的源保留在生成的源目标文件夹之外

转载 作者:行者123 更新时间:2023-12-02 02:04:00 26 4
gpt4 key购买 nike

我正在使用 MapStruct 生成一些实体到 DTO 映射器。我定义了一个抽象映射器,并使用测试实体、测试 dto 和测试映射器为其创建了一些测试。这些测试文件位于 src/test/java 文件夹中,但是当 MapStruct 生成测试映射器的实现时,它将生成的源放在 target/generated-sources 文件夹中,而不是 target/generated-test-sources 文件夹中。这会导致该类被编译到我不想要的实际 jar 文件中。

[更新]我在这里举了一个重现问题的例子:

https://github.com/niltz/so-51090868-example

当我在命令行上使用 maven 运行构建时,似乎工作正常,但是当我将 pom 导入 Spring Tool Suite 时,我遇到了问题。

最佳答案

我在 src/test/java/ 中使用以下类进行了快速测试,该类有一个类

 @Mapper
public abstract class AbstactClass {

}

我的 Maven pom 中有以下依赖项和插件:

      <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<annotationProcessorPaths>
<path>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-processor</artifactId>
<version>1.1.0.Final</version>
</path>
</annotationProcessorPaths>
</configuration>
</plugin>

<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-jdk8</artifactId>
<version>1.1.0.Final</version>
</dependency>

并运行mvn clean install。生成的类位于 target/generated-test-sources 中。如果您提供有关您的类(class)和设置的更多信息,我可以提供更多帮助。

关于java - 如何将测试生成的源保留在生成的源目标文件夹之外,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51090868/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com