IntelliJ:从事多个项目

Xor*_*rty 293 intellij-idea

我们在maven中构建了多个项目(我们将它们命名为A,B,C).项目A使用项目B的.jar,它使用项目C的.jar.

我正在修改所有A/B/C项目的代码,(A是MVC应用程序,B是业务服务,C是一些共享层).

问题是,在Eclipse/NetBeans中,我可以同时看到所有这些,并且修改它们很舒服.但在IDEA中,我必须打开IntelliJ IDEA的3个实例(或n个实例).

我错过了什么吗?使用IntelliJ时有更好的方法吗?对于我来说,这是IntelliJ的最大缺点.

Vik*_*ing 389

我认为最近版本的IntelliJ有所改进.在我当前的版本(12.0.2)中,您可以将任意数量的单独Maven项目添加到同一个"工作区".

我发现这样做的最简单方法是单击+"Maven Projects"窗口中的小图标(View> Tool Windows> Maven Projects),然后选择要导入的其他pom文件.

  • 对于那些不熟悉IntelliJ并且不知道"Maven Projects"窗口在哪里的人:右上角. (13认同)
  • 如果这些项目位于不同的git存储库中,则可以在设置("设置">"版本控制">"Git")中选中"同步控制存储库".IntelliJ将在多个项目中保持同步推送,更新和分支选择. (9认同)
  • 因此,如果您需要打开多个项目,但它们是 Gradle 或 Ant 项目,那么您仍然不走运。不,谢谢...我需要能够打开所有 3 个,例如 NetBeans 和 Eclipse 允许。缺乏合适的工作空间是我仍然不使用 IJ 的第一大原因。 (3认同)
  • 只是添加:一旦添加了 Maven 项目,如果它是本地项目,它将加载到“项目”面板中。 (2认同)

Tho*_*Tho 189

请按照以下两个步骤操作:

第1步:打开"Maven项目"

在此输入图像描述

第2步:选择要导入的项目:

在此输入图像描述

  • 一张图片胜过千言万语. (14认同)
  • 谢谢,这真的很有用 (3认同)
  • 这个答案对我很有帮助,尤其是在使用屏幕截图时。谢谢。 (2认同)
  • 我在我的实例中没有看到该选项:“2019.3 社区” (2认同)

Łuk*_*man 125

是的,你的直觉很好.你不应该使用intellij的三个实例.您可以打开一个项目并将其他"应用程序"部分添加为模块.通过项目浏览器添加它们,默认热键是alt + 1

  • 以下更好的答案 (85认同)
  • @redDevil不!这个答案更为一般,如果您有非maven项目,这个答案会更好,因为最高投票答案根本不包括它们.这两个答案处理不同的情况并且同样相关,没有人比另一个更好*. (4认同)
  • @redDevil哪一个? (3认同)
  • 这比“仅 Maven”的答案要好,但如果您希望同时可见的不相关项目(例如,轻松访问引用另一个项目的代码),或者如果您支持依赖于你关注的项目。非常令人沮丧的是 IJ 在这里没有使用 Eclipse/NetBeans 模型,这是阻止我切换到 IJ 的主要因素。 (2认同)

Thi*_*anK 119

Prequisite

将所有相关项目放在一根目录中.

脚步

1)首先创建一个新的Empty项目

新的空项目


2)然后选择所有项目的根目录.

这将创建一个空项目,其中.idea目录将简单地记住我们将在下一步中执行的模块组织

选择根目录


3)然后,在下一个窗口中,将不同的项目导入为模块

将项目导入为模块


4)在下一个窗口中,要导入每个项目,只需双击build.gradlepom.xml即可

该项目将作为新模块导入. 选择构建文件


5)完成后,您现在将所有项目作为模块,在同一个IntelliJ项目上打开

结果

  • 这是这个问题的正确答案.首先,创建并清空项目,然后添加现有项目.谢谢. (14认同)
  • 你有解决方案.但是你的'Prequisite将所有相关项目放在同一根目录中.' 不需要.我尝试了maven项目,它可以与Intelllij版本2017.3一起使用.我没有尝试使用intellij标准模块. (3认同)
  • 如果你有运行配置怎么办?所有宏都指向“真正的”项目根目录,而不是您导入的模块的根目录,这意味着您必须在虚拟机选项中使用绝对路径。有人有解决方案吗?编辑:是的,我只是使用 $MODULE_DIR$ 来实现这一点,并且它有效。 (3认同)
  • 最佳答案.谢谢 :) (2认同)
  • 为我使用了Intellij Idea 2018.3和Gradle。 (2认同)

Neo*_*Neo 49

在IntelliJ 14.1.2中,我做了如下:

选择File- > Project Structure- > Modules.

选择+Import Module选择项目的目录(或存在pom的目​​录),然后单击"确定".

按照下一个屏幕流程进行操作,点击后Finish,您应该看到项目与现有项目一起.

在此输入图像描述

  • 这应该是公认的解决方案。并非所有项目都使用 maven。 (2认同)

gmo*_*ode 31

没有一个解决方案适合我,因为我不在Maven项目上工作.有一个更简单的解决方案.去:

文件 - >项目结构 - >模块.

在此输入图像描述

只需单击第三个选项(复制),而不是添加模块.浏览本地目录并选择要添加的项目.模块名称将自动解决.而已.

更新:当您想要重新打开多个子项目的项目时,为了避免重复上述步骤,只需转到 文件 - >打开最近 - >'您的大项目'.

  • 是的......哦是的......这是我正在寻找的解决方案。作为 maven 模块或项目导入不会生成 `.idea` 和 `xxx.iml` 文件。这可能会导致 **apache 瓷砖** 出现问题。我正在使用版本`2018.1.5`。非常非常感谢你。 (2认同)

pit*_*as3 14

从 macOS Big Sur 和IntelliJ IDEA 2020.3.2 开始,您可以使用“在 macOS Big Sur 的选项卡中打开项目”功能。要使用它,您必须在系统设置中启用此功能:

System Preferences -> General -> Prefer tabs [always] when opening documents

在此处输入图片说明

在这一步之后,当您尝试在 IntelliJ 中打开第二个项目时,选择New Window(yes, New Window, not This Window)。

在此处输入图片说明

它应该导致在同一窗口中打开新项目,但在新卡中:

在此处输入图片说明

  • 不幸的是这个功能对我来说不再起作用了。有人面临这个问题吗? (2认同)
  • @Spartan,“合并所有项目窗口”可在 [2022.2](https://blog.jetbrains.com/idea/2022/07/intellij-idea-2022-2) 中找到。 (2认同)

Sey*_*ini 11

在选择目录后展开@Neo回答:选择import module from external model并选择你的模型(在这种情况下是maven).

选择模特

然后keep project files从下一个对话框中选中选项 它会将所有文件保存在原始目录中.

选项

你的最终项目结构将是这样的.

结构体

现在您可以将模块作为依赖项添加到其他模块中pom.xml,如果更改了依赖项的源代码,Intellij会负责更新项目(不需要mvn为依赖项手动运行构建)


小智 8

对于使用 Gradle 的人也可以使用相同的方法:

在此处输入图片说明

在此处输入图片说明

转到: 1. 查看 --> 工具窗口 --> Gradle 2. 单击+按钮并添加您的build.gradle文件


1lO*_*91W 7

  • 新的空项目
  • 文件 - >新建 - >现有来源的模块


小智 7

打开首选项 - >外观和行为 - >系统设置 - >选择(在新窗口中打开项目)然后应用.在此输入图像描述

然后,您可以打开并编辑多个项目.

  • 这正是OP试图避免的.他希望他们在同一个窗口,所有三个项目同时. (5认同)

小智 6

您可以使用Armory插件,使项目之间的切换更加舒适.项目列表中的默认快捷键是Alt + A键.

Project List窗口的屏幕截图

默认情况下,当前打开的项目显示在此列表的顶部(带粗体样式).


Are*_*efe 5

使用添加 Maven 项目按钮并进入项目文件夹。然后,选择该pom.xml文件并将其添加到 IntelliJ 中。

在此输入图像描述


小智 5

“IntelliJ IDEA 2022.1.1(社区版)” 您必须导航要将退出模块添加到同一窗口,导航“文件 -> 新建 -> 来自现有源的模块”,然后它将允许您选择 pom.xml,然后单击“创建” “按钮下一个窗口然后项目将被添加到您当前的工作区。

在此输入图像描述

注意:: 谁从 Eclipse 切换到 Intellij 这是第一个问题