8

我有一个使用 gradle 的项目,并将 mapstruct 作为依赖项之一。每次我尝试构建项目时,它都失败了。我猜是因为 Mapstruct 会生成 gradle 找不到的 impl 类。谁能帮助我如何在 intellij IDEA 中进行配置?

谢谢

4

4 回答 4

8

这对我有用

在 intellij IDEA 中转到

文件 | 设置 | 构建、执行、部署 | 构建工具 | 摇篮 | 赛跑者

启用委托 IDE 构建/运行操作。参考:- https://www.jetbrains.com/idea/whatsnew/#v2016-3-gradle

在 build.gradle

buildscript {
    ...    
}
plugins {
    id 'net.ltgt.apt' version '0.9'
}

apply plugin: 'idea'
apply plugin: "net.ltgt.apt"

dependencies {
    ...
    compile 'org.mapstruct:mapstruct-jdk8:1.1.0.Final'
    apt 'org.mapstruct:mapstruct-processor:1.1.0.Final'
}

添加此配置后运行您的项目,您可以在 build/generated 文件夹中看到生成的文件

于 2017-07-14T17:37:16.853 回答
2

嘿,每个人我都有同样的问题,并找到了解决这个问题的干净方法。我正在使用两个需要注释处理的库(Lombok 和 MapStruct)。

我的 IntelliJ 也是 2019.1(更新你的,以防它更旧)和 Gradle 5.2.1。

首先让我们配置 IntelliJ:

  1. 在设置中禁用注释处理,因为我们要将所有内容委托给 Gradle:

在此处输入图像描述

  1. 将 IDE 操作委托给 Gradle:

在此处输入图像描述

最后一步是在 Gradle 中正确配置依赖项。

  1. Gradle 中的依赖项部分:

在此处输入图像描述

现在您可以从命令行和 IDE 执行构建和运行。

干杯!

于 2019-04-10T06:21:08.503 回答
1

从 Mac 操作系统

  1. 请删除build生成的文件夹。
  2. 单击 Intellij IDEA =>Preferences...从菜单中单击 => 选择Build, Execution, Deployment=> 选择Gradle=> 选择Runner
  3. 勾选Deledate IDE build/run actions to gradle复选框
  4. 从运行测试中使用:Gradle Test Runner从下拉列表中选择。

    在此处输入图像描述

于 2019-03-14T03:10:40.493 回答
0

我发现另一个有用的设置是取消选中“为每个源集创建单独的模块”文件 | 设置 | 构建、执行、部署 | 构建工具 | 摇篮

取消选中“为每个源集创建单独的模块”

于 2018-09-20T17:43:10.143 回答