当前位置: 首页 > 知识库问答 >
问题:

Maven编译器插件不将生成的类复制到测试源

融修平
2023-03-14

Maven编译器插件没有将生成的类(mapstruct中的映射器)复制到target\generated test sources\test annotation。目录已创建,但为空。生成的类仅复制到目标\生成的源\注释。

这是我的maven编译器插件配置:

<plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.1</version>
            <configuration>
                <release>11</release>
                <annotationProcessorPaths>
                    <path>
                        <groupId>org.mapstruct</groupId>
                        <artifactId>mapstruct-processor</artifactId>
                        <version>${org.mapstruct.version}</version>
                    </path>
                    <path>
                        <groupId>org.projectlombok</groupId>
                        <artifactId>lombok</artifactId>
                        <version>${org.lombok.version}</version>
                    </path>
                </annotationProcessorPaths>
            </configuration>
        </plugin>

谢谢你!

共有1个答案

融烨华
2023-03-14

生成源的位置由maven-编译器-插件定义。

默认情况下,它将把注释处理器生成的类放在:

  • 目标/生成的源代码/注释-从src/main/java位置编译类时
  • 目标/生成的测试源/测试注释-从src/test/java位置编译CLASE时

为了让您看到Target/生成-测试-源/测试-注释下的类,那么您的映射器应该在src/test/java下。

 类似资料:
  • 我尝试通过maven->clean和project->clean来清理我的项目,但没有效果。我尝试在构建路径下显式更改输出文件夹,但不确定为src/test/java选择什么 并且我得到了在类路径错误中找不到TestNG类: 早些时候,这段代码运行良好。我只是尝试通过更改maven项目的工件id来调整项目,然后就无法继续了。

  • 我无法从命令行编译Maven项目。我使用的是Maven版本: Apache Maven 3.5.4 null 这是我的pom.xml(没有依赖项): 新的堆栈跟踪是:

  • 问题内容: 修正:这是maven-compiler-plugin 3.1中的一个已知错误 我正在将1000+ java-sources项目的基于ant的版本转换为maven。到目前为止还不错,但是每次启动时它都会重新编译所有内容(而不是重用旧类) 使用的报告 ( 仅适用于某个程序包中的文件, 可能未从其余代码中引用该文件;不适用于我的源代码,我只是在尝试弄乱该版本) 编译不会失败,并且会在以下时间

  • 我有一个maven项目,它是从git回购复制到我的eclipse上的。它是基于Java8构建的。我要做的第一件事就是做一个 但我收到以下失败信息: 以及汇编设置: 无论我构建项目多少次,我都会得到相同的错误。即使在清理项目并从eclipse中刷新它之后也没有帮助。请导游。 更新: 在添加属性以设置maven编译器插件之后 , 我得到以下错误: 下面是给出MainUITabbed类编译错误的代码片段

  • 我想使用swagger codegen maven插件为我的API生成JAX-RS服务器存根,但我想使用我自己的服务实现类,而不是生成的服务实现类。除了这个类,还有什么方法可以生成所有的东西吗?对于我的API,该工具生成四个API类:ProfilesApi、ProfilesApiService、ProfilesApiServiceFactory和ProfilesApiServiceImpl。 我目

  • 我正在更新一个Spigot(Minecraft)插件,最新版本的Spigot需要Java16。在我的pom中,我将maven编译器插件目标更改为16,源代码仍然是1.8。现在我得到以下错误: POM: 4.0.0