代码之家  ›  专栏  ›  技术社区  ›  Jim L.

在IntelliJ中,如何修复“这些文件不属于项目”?

  •  59
  • Jim L.  · 技术社区  · 11 年前

    我最近在SVN中将几个旧的、令人讨厌的git目录结构放到了一个新的、干净的结构中,然后将整个SVN存储库拉回到了一个干净的本地git存储库中。一个IntelliJ项目搞砸了,我不得不导入旧的IntelliJ项目,它创建了一个新的 .iml 文件具有更好的名称,并删除了旧的 .iml文件 文件我重新配置了所有内容,将其提交回SVN,并验证其他人可以打开项目并进行构建。

    今天,我第一次尝试在这个项目中编辑一个文件,得到的消息是“这些文件不属于这个项目”。IntelliJ提供解锁当前会话中的文件或所有非项目文件,但这两个选项听起来都不对。我对自己做了什么,我该如何解决?

    17 回复  |  直到 11 年前
        1
  •  101
  •   Sidonai    7 年前

    当我忽略.iide/文件时,我就遇到了这种情况。就这样吧

    rm -rf .idea/
    

    然后文件->使缓存无效/重新启动->使无效并重新启动。

        2
  •  28
  •   Jim L.    11 年前

    我解决了这个问题。文件在所有洗牌之前仍然是打开的,显然是指向原始文件的原始位置!我关闭了编辑器,从项目树中重新打开了文件,没有问题。我希望有一天这对其他人有所帮助。

        3
  •  21
  •   anilsathyan7    4 年前

    从文件->修复IDE->重新扫描项目索引->Reopen Project为我工作。

        4
  •  15
  •   Indy660    4 年前

    在Ubuntu(Webstorm)上也有同样的问题,Intellij给出了答案。

    项目中没有内容根,因此所有文件都是 视为非项目文件。正如我写的那样,idea文件很可能 损坏,.iml文件和/或modules.xml丢失或 已损坏。删除并重新创建.didea文件夹应有助于:

    -关闭项目

    -将其从“最近的项目”列表中删除

    -关闭IDE

    -删除.didea文件夹

    -重新启动,使用“文件”打开项目根文件夹>打开

    https://intellij-support.jetbrains.com/hc/en-us/requests/3779670?page=1

        5
  •  14
  •   stelios    10 年前

    当我通过symlink(父目录)打开项目时,或者当python解释器位于symlink目录中时(因为virtualenv),也会发生这种情况。

    通过原始目录树重新打开(在与IDE进行了激烈的斗争以忘记其心爱的项目设置之后),解决了问题。

        6
  •  4
  •   thephpdev    6 年前

    它可能列在 .idea/*.xml .

    只需查找有关文件名的文件夹,然后从XML中删除该文件夹的条目。

    我的在 .idea/workspace.xml 在以下节点中: <component name="TypeScriptGeneratedFilesManager"> .

    我删除了该选项,然后使缓存无效并重新启动,现在该文件再次标记为标准的、未生成的文件。这样,您可以保留所有设置,而无需导出和导入它们。

        7
  •  3
  •   yoshinator    5 年前

    WebStorm也存在类似问题。不同的是,我必须完全关闭IDE,然后删除.didea文件夹 rm -rf .idea 我尝试在IDE打开并转到文件 File -> Invalidate Caches 但这并不能解决我的问题。

        8
  •  2
  •   Astra Bear    7 年前

    同样的问题。文件被认为不是项目的一部分,即使我删除了它并创建了一个同名的新文件。

    为了解决这个问题,我在左侧面板中突出显示了项目节点,从顶部菜单中选择了“文件/使缓存无效并重新启动”。

    重启后,我必须将文件设置为JS文件(右键单击,设置为JavaScript),关闭并重新打开项目。全部固定。

        9
  •  1
  •   Pouria Hemi    5 年前

    对我来说,上述情况毫无帮助。我最后去了 Project Structure -> Modules -> +在顶部狭窄的中间 column -> browsed 通过文件选择 项目 Folder -> apply -> ok -> all 已完成并正常工作。

        10
  •  0
  •   CGFoX    5 年前

    我的问题比预想的要简单得多:我试图运行一个Jupyter笔记本,结果出错了——因为它位于项目结构中标记为“排除”的文件夹中。

    简单地将笔记本从排除的文件夹中移出就解决了我的问题。

        11
  •  0
  •   nouveu    5 年前

    在我的情况下,它是自动生成的 .gitignore ,我的条目如下:

    ### npm ###
    node
    node_modules
    frontend-dest
    data/
    

    在项目文件中,我有一个名为 com.company.test.data 这与最后的模式相匹配。我强烈建议在移除之前检查它 .idea/ 文件并使缓存无效。

        12
  •  0
  •   shizhen    5 年前

    此警告是Android Studio无法识别当前目录的IDE问题 如果它不包含任何源文件 . 所以 添加空源文件,例如 empty_xxx.c 在目录下 在中添加以下行 CMakeList.txt

    add_library(${TARGET_NAME_XXX} SHARED ${SOME_DIR_HAVING_THIS_WARNING}/empty_xxx.c)
    

    将有助于消除此警告。

        13
  •  0
  •   Brian Mutiso    5 年前

    在我的情况下,上面的方法并没有起到什么作用,我只是删除了项目中的.iidea文件,并将Jetbrain IDE重置为默认设置,它正常工作。

    注意:你会放松所有的设置和插件,但如果你不介意,这可能会像我的情况一样,作为最后的手段。 我正在使用Jetbrain,

        14
  •  0
  •   OptatootatpO    4 年前

    确保在项目中包含所有项目文件。使用设置->项目结构。

        15
  •  0
  •   Charbel Semaan    4 年前

    PyCharm>首选项>项目>项目结构>添加内容根目录

    在我的案例中,PyCharm丢失了项目根目录

        16
  •  0
  •   shmuels    4 年前

    对我来说,这是因为我通过将文件从wsl复制到windows,将一个项目移动到了wsl。当我切换分支时,文件必须是以前打开的,并且是它的windows版本,而不是wsl版本。

    我终于注意到了这一点,在文件选项卡的顶部 C:\User...\filename 而不是 \\wsl$....\filename .

        17
  •  -3
  •   Daniel Aviv    5 年前

    关闭JetBrains IDE,然后打开终端窗口并导航到项目的根文件夹,然后运行以下两个命令:

    rm -rf .idea
    

    然后

    rm -rf .git
    

    注意:您可能需要将项目连接回git存储库,因此如果您有任何未提交的更改,请确保提前提交并推送,以避免丢失。