使用 IntelliJ IDEA,如何在不打开 IDE 的情况下从项目中排除目录?
With IntelliJ IDEA, how can I exclude a directory from a project without opening the IDE?
出于我无法控制的原因,我的许多项目目录必须包含多个指向包含网络文件系统上大量文件(可能数十万)的目录的符号链接。它们与根 pom.xml
.
平行
当 IntelliJ 尝试索引这些目录时,它冻结了(我希望它最终会完成)。通常我可以将这些目录标记为已排除,这样 IntelliJ 就不会为它们编制索引。但是,这些目录有时是在初始项目导入后创建的。如果 IntelliJ 在我将它们标记为已排除之前捕捉到它们,它会冻结。更糟糕的是,当我重新启动并尝试打开该项目时,它会立即再次冻结。
如何在不在 IntelliJ IDEA 中实际打开项目的情况下标记这些目录应该被排除?
您可以直接编辑项目文件以排除这些目录。为您的项目找到 .iml
文件。在 content
元素下添加 excludeFolder
元素,如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_6" inherit-compiler-output="false">
<!-- other things will be here -->
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/directoryToExclude" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<!-- etc -->
出于我无法控制的原因,我的许多项目目录必须包含多个指向包含网络文件系统上大量文件(可能数十万)的目录的符号链接。它们与根 pom.xml
.
当 IntelliJ 尝试索引这些目录时,它冻结了(我希望它最终会完成)。通常我可以将这些目录标记为已排除,这样 IntelliJ 就不会为它们编制索引。但是,这些目录有时是在初始项目导入后创建的。如果 IntelliJ 在我将它们标记为已排除之前捕捉到它们,它会冻结。更糟糕的是,当我重新启动并尝试打开该项目时,它会立即再次冻结。
如何在不在 IntelliJ IDEA 中实际打开项目的情况下标记这些目录应该被排除?
您可以直接编辑项目文件以排除这些目录。为您的项目找到 .iml
文件。在 content
元素下添加 excludeFolder
元素,如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_6" inherit-compiler-output="false">
<!-- other things will be here -->
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/directoryToExclude" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<!-- etc -->