codecamp

IntelliJ IDEA模块分组与卸载

IntelliJ IDEA 模块分组

如果有很多模块在你的项目,您可能希望将它们安排在模块组中。

模块组可以是嵌套,也就是说,组可以包含子组,子组 - 下级子组等。

若要创建一个组并向其添加模块:

  1. 在 "项目" 工具窗口或 "项目结构" 对话框中,右键单击要添加的模块。
  2. 在上下文菜单中,选择"将模块移动到组",然后选择 "新建 top-level 组"。因此,将创建一个新的(top-level)模块组,所选模块将成为其成员。还有以下选项:在任何组外,如果所选模块当前是模块组的成员,则该模块将从该组中删除。对于新的子组。将在所选组中创建一个新子组,并将所选模块移动到此子组。对该组: 所选模块将被移动到所选模块组。

卸载未使用的模块

为什么要卸载 IntelliJ IDEA 模块?

在 IntelliJ IDEA 中为了使 IDE 工作更快,您可以卸载当前不工作的模块。IntelliJ IDEA 在您搜索或重构代码或者编译项目时忽略卸载的模块。

未通过版本控制共享有关已卸载模块的信息。所以你可以暂时卸载不必要的模块,而不影响你的队友的项目配置。

如何卸载或加载模块?

  1. 在 "项目工具" 窗口中,右键单击任意元素,然后选择 "加载/卸载模块"。
    IntelliJ IDEA如何卸载或加载模块
  2. 在打开的对话框中加载或卸载模块。
    IntelliJ IDEA如何卸载或加载模块 

潜在的问题

通常,IntelliJ IDEA 会通知您潜在的问题。然而,这并不总是可能的。

当加载模块和卸载模块之间存在依赖关系时,可能会出现问题。

为了说明这一点,我们假设一个模块 A 依赖于一个模块 B,而您执行下列操作:

  • 在 A 加载期间卸载 B:B 中包含的类别的引用将显示为未解析(红色)。A 的编译很有可能会失败。
  • B 加载时卸载 A:你的代码中不会出现相关的错误。B 的编译将取得成功。当您在 B 中包含的类,字段,方法等中调用 Find 用法或重构时,结果可能不完整(因为A 的内容未被考虑),那么,IntelliJ IDEA 将通知您。通过对 B 中的代码进行更改, 您可能会意外地断开从属代码的编译。由于在编译项目时没有编译A,所以没有潜在的编译失败的迹象。
IntelliJ IDEA添加现有模块与创建Java模块
IntelliJ IDEA内容根目录的使用
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

IntelliJ IDEA的一般准则

什么是IntelliJ IDEA项目

使用IntelliJ IDEA的意图行为

IntelliJ IDEA使用运行/调试配置

特定于VCS的程序

IntelliJ IDEA语言和特定框架指南

IntelliJ IDEA的数据库和SQL功能

IntelliJ IDEA使用之JavaServer Faces(JSF)

IntelliJ IDEA:分析PHP应用程序的性能

IntelliJ IDEA:调试PHP应用程序

IntelliJ IDEA:适用于PHP的Google App Engine

IntelliJ IDEA更多内容

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }