cop*_*lii 45 java intellij-idea junit4 lombok intellij-lombok-plugin
我有一个使用lombok的基于Gradle的项目.我已将此项目导入IntelliJ IDEA 14.1(使用导入外部模型导入方法).我可以在Gradle中没有问题地运行JUnit4单元测试,但IntelliJ似乎在看到Lombok生成的Getters时遇到了问题.这使我无法在IDEA中运行测试.
为了确保它不是一个设置问题,我创建了一个非常简单的项目,并确认在简单的测试项目中出现了同样的问题.
我的版本:Gradle:gradle-2.3-all通过Gradle包装器
Intellij IDEA:IU-141.713
Lombok插件:0.9.2
我在这里错过了什么?
更新通过看不出我的意思是身体不可见.我是说这个:
/home/meeee/workspace/junit-lombok-idea/lib/src/main/java/com/example/jumbokea/Main.java
Error:(10, 11) java: cannot find symbol
symbol: method setIntField(int)
location: variable sc of type com.example.jumbokea.SomeClass
Error:(12, 41) java: cannot find symbol
symbol: method getIntField()
location: variable sc of type com.example.jumbokea.SomeClass
Error:(14, 33) java: constructor AnotherClass in class com.example.jumbokea.AnotherClass cannot be applied to given types;
required: no arguments
found: float,com.example.jumbokea.SomeClass
reason: actual and formal argument lists differ in length
Error:(16, 46) java: cannot find symbol
symbol: method getSomeFloat()
location: variable ac of type com.example.jumbokea.AnotherClass
Error:(17, 43) java: cannot find symbol
symbol: method getSomeClass()
location: variable ac of type com.example.jumbokea.AnotherClass
Run Code Online (Sandbox Code Playgroud)
反编译的类显示getter和setter,但是当我让IntelliJ运行'app'或Unit测试时,我遇到了这些错误.

在我的情况下,问题发生在通过 Toolbox 更新 IntelliJ 之后。
“启用注释处理”标志已关闭(尽管从以前的 IntelliJ 版本导入设置),因此我将其打开。这在重新启动、清理、构建后没有解决问题。
但是,重新安装 lombok 插件有帮助!
编辑:似乎是 lombok 插件与 IntelliJ 2018.1 的兼容性问题,IntelliJ 用户需要将插件升级到 0.17。
Lombok 插件更新日志摘录:
Lombok 支持插件更新到 v0.17: - 固定(#465):修复插件与 IntelliJ 2018.1 的兼容性
正如其他答案中提到的,请安装Lombok插件并启用注释处理器。SHIFT在 IntelliJ 中按两次并Enable annotation processing在搜索框中键入。然后,勾选该框并重新启动 IDE。
| 归档时间: |
|
| 查看次数: |
56303 次 |
| 最近记录: |