所以我有一个如下所示的文件结构:
.git
.project
.classpath
app1
pom.xml
.classpath
.project
src
app2
pom.xml
.classpath
.project
src
app3
pom.xml
.classpath
.project
src
TheAppIWorkOn
pom.xml
.classpath
.project
src
TheAppIWorkOn 使用 app1、2 和 3 中的 jar,这些 jar 是 Maven 依赖项,因此当我需要编辑 app1、2 或 3 中的某些内容时,这是一个痛苦的过程。如果我使用“跳转到声明”功能,它只会向我显示锁定的罐子。是否可以进行设置,以便当我“跳转到声明”时,它会将我带到可以编辑的实际代码?
如果你有一个Maven 反应堆构建 http://maven.apache.org/guides/mini/guide-multiple-modules.html它将为您完成所有模块设置。现在您只有 jar 文件的依赖关系,IntelliJ 无法知道您有要依赖的模块。但是您可以通过指出模块依赖关系来帮助 IntelliJ,之后您将能够在项目中的所有类之间导航。
最好的方法是创建一个pom.xml
在项目的根目录中。该 pom 将不同的模块放在一起并定义构建顺序。当您想要第一次打开项目时,只需将 IntelliJ 指向此 pom 文件,所有依赖项都将得到解析和设置,因此不同模块中的类之间的导航变得轻而易举。
根目录的示例 pom 文件:
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.stackoverflow</groupId>
<artifactId>Q16589702</artifactId>
<packaging>pom</packaging>
<version>1.0-SNAPSHOT</version>
<name>${project.artifactId}-${project.version}</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<modules>
<module>app1</module>
<module>app2</module>
<module>app3</module>
<module>TheAppIWorkOn</module>
</modules>
</project>
如果由于某种原因您无法执行此操作,那么您必须通知 IntelliJ 有关模块依赖项的信息。您可以通过打开Project Structure
.
然后选择模块TheAppIWorkOn
然后按底部的加号并选择Module Dependency...
.
在那里您可以选择您想要作为依赖项的所有模块。
Press Ok and then Ok again.
现在您将能够在项目中的不同类之间导航。
If app1
, app2
and app3
彼此之间也存在依赖关系,那么您必须为它们做同样的事情。
但最简单的方法肯定是在根项目目录中有一个 pom 文件,其中包含所有模块间依赖项。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)