IntelliJ检查适用于Java文件,而不是Groovy文件
运行IntelliJ时,Groovy脚本的导入、语法和其他内容的内联更正似乎是“脱机”的。对于Java,一切正常 JavaClass.java:IntelliJ检查适用于Java文件,而不是Groovy文件,java,intellij-idea,groovy,Java,Intellij Idea,Groovy,运行IntelliJ时,Groovy脚本的导入、语法和其他内容的内联更正似乎是“脱机”的。对于Java,一切正常 JavaClass.java: public class JavaClass { private final Instant instant; } 应为:无法解析符号即时。导入类-->Alt Shift Enter 实际:无法解析符号即时。导入类-->Alt Shift Enter GroovyClass.groovy: class GroovyClass {
public class JavaClass {
private final Instant instant;
}
- 应为:无法解析符号
即时
。导入类-->Alt Shift Enter
- 实际:无法解析符号
即时
。导入类-->Alt Shift Enter
class GroovyClass {
private final Instant instant
}
- 应为:无法解析符号
即时
。导入类-->Alt Shift Enter
- 实际值:变量“instant”可能尚未初始化
JavaClass
带红色下划线,但GroovyClass
不带红色下划线。直到使用Ctrl-F9
调用编译器,才会出现消息Groovyc:cannot resolve class Instant
升级到IJ 2020.2.2后,该功能正常运行了一个小时左右,然后再次“离线”
正在使用的软件:
- IntelliJ 2020.2.2
- Java 11 GraalVM CE 20.1.0(构建11.0.7+10-jvmci-20.1-b02)
- Groovy 3.0.5
- 使用IntelliJ 2019.3
- 升级至2020.2.2
- 无效缓存+重新启动
- 使用Java8JDK而不是11
- 打开/关闭省电模式
- GraalVM 8 20.1.0.r8 134m
- GraalVM 11 20.1.0.r11 159m
- 谢谢彼得的建议
对我有效的方法是从版本11降级到JDK 8,并确保IntelliJ使用与Gradle相同的JDK,因此这意味着使用IntelliJ而不使用捆绑运行时。在那之后,我可以使用任何我想要的智能,它们都可以工作
作为奖励,我的长时间运行过程加快了18%,IntellIJ本身也加快了18%(在Linux上运行)