IntelliJ ctrl click引用的是.class文件而不是.java文件
我在.groovy文件中有以下代码行用于测试:IntelliJ ctrl click引用的是.class文件而不是.java文件,java,intellij-idea,Java,Intellij Idea,我在.groovy文件中有以下代码行用于测试: GenerateShipConfirmsForBatch gscb = new GenerateShipConfirmsForBatch(); Ctrl键单击GenerateShipConfigsforBatch会将我带到.jar中的GenerateShipConfigsforBatch.class,而不是.java文件,即使我在顶部正确导入了该类。我希望它引用.java文件,这样它就可以接收我对.java文件所做的更改 任何帮助都将不胜感激 仅
GenerateShipConfirmsForBatch gscb = new GenerateShipConfirmsForBatch();
Ctrl键单击GenerateShipConfigsforBatch会将我带到.jar中的GenerateShipConfigsforBatch.class,而不是.java文件,即使我在顶部正确导入了该类。我希望它引用.java文件,这样它就可以接收我对.java文件所做的更改
任何帮助都将不胜感激 仅仅因为您在顶部导入了类,并不意味着您可以查看源代码(例如,
.java
文件)。如果此类来自pom.xml
或build.gradle
文件中定义的依赖项,则您可能无法查看源代码。但是,如果这是项目顶层的一个单独模块,则可以查看.java
文件。如果这个库是开源的,那么我建议在您的项目中克隆它并将其添加为一个模块。这将解决您的问题。您可以从以下位置安装Java反编译器IntelliJ插件:
它允许您在调试过程中显示所有Java源代码,即使您没有所有Java源代码
在我看来,您所写的似乎是在两个不同的包中或在导入的项目中,而不是在可打开的java类中,具有相同名称的类。导入类时,请小心导入要使用的类
注释类服务广泛应用于不同的包中
只需检查您是否使用了正确的导入
二次猜测-错误设置模块
如果您使用的是多模块应用程序,则必须正确设置父项目以正确解决此问题,同时也必须正确设置链接所在的子项目
在Maven中,它是使用pom.xml
完成的。这是一个非常好的地址
在Gradle中,使用build.Gradle
完成。你可以阅读更多关于它的内容
关于课程的基本知识 本地类 Idea优先链接本地
.java
文件,而不是.class
,因此如果出现这种情况,我建议重新安装Idea,因为我找不到正确的方法
链接类(来自外部库)
如果您导入了外部库,它将链接到.class
,因为它是从.jar
文件反编译的
如果您使用的是
Maven项目
,您可以使用源代码下载.jar
,单击下载源代码和/或文档
因为您没有下载此repo的源代码,所以需要下载源代码。或者Intellij会将类文件反编译为源代码(我认为您可以在文件顶部看到一条警告),如果您要编辑此代码,GenerateShipConfirmsForBatch.java
文件必须位于项目的一个源根目录中。您有权访问.java文件吗?请按照中的说明进行操作。
import org.springframework.stereotype.Service;
import com.google.web.bindery.requestfactory.shared.Service;