源根 intelliJ 之外的 Java 文件
Posted
技术标签:
【中文标题】源根 intelliJ 之外的 Java 文件【英文标题】:Java file outside of source root intelliJ 【发布时间】:2020-12-10 17:47:11 【问题描述】:我从 GitLab 克隆了一个 Spring Boot 项目,在 IntelliJ 中有多个分支。我结帐到我想工作的分支。但是我在所有文件上都得到了“源根目录之外的 Java 文件”。请提出我做错了什么。 我刚刚安装了 IntelliJ,这是我要导入的第一个项目。
【问题讨论】:
使用什么构建系统?摇篮?马文? SBT?确保您已在 IDE 中启用相应的插件。 @JoachimSauer 我正在使用 Maven。我试图构建一个项目,它正在成功构建。但仍然面临同样的问题。我刚刚安装了 IntelliJ,这是我要导入的第一个项目 IntelliJ 默认安装了一个 Maven 插件,并且(我认为)也启用了,所以如果你只是导入项目,它应该检测所有相关的源路径,除非maven build 做了一些不寻常的事情...检查this document,因为您没有向我们提供有关如何导入项目的大量信息。 @JoachimSauer 我通过选择“从 git 导入”选项并粘贴 repo 链接来导入 Gitlab 项目。 @Abhishek 错误消息“源根目录之外的文件”提示您的源根目录(和/或文件位置)可能是错误的。源根目录应该是 src 文件夹中的 java 文件夹。右键单击 java 文件夹并选择 [将目录标记为] > 源根目录。如果这没有帮助,请向我们提供您工作的 github 链接和分支或一个最小的简单工作示例。还请向我们提供堆栈跟踪信息的完整错误。 【参考方案1】:如果您执行“从 git 导入”,IntelliJ 不会自动从 maven(或 gradle)导入项目结构。
之后的一种方法是右键单击根目录中的 pom.xml 文件,然后选择“添加为 maven 项目”。然后将正确标记文件夹,并导入依赖库。应该不需要手动标记单个源文件夹。
我更喜欢在 IntelliJ 之外做一个 git clone,并从本地文件系统打开项目,然后 IntelliJ 自动导入 maven 项目结构。
【讨论】:
【参考方案2】:非常简单的解决方案:-
点击IntelliJ右侧工具栏上的“maven”,然后点击刷新按钮。
【讨论】:
此解决方案非常适合来自“目标 - 生成源”的文件。谢谢!【参考方案3】:这让我很生气,我也是新手。我终于通过使用解决了它:
文件>项目结构>
然后转到模块并使用最右侧的 x 标记从根目录中删除所有文件。然后我使用 +Add Content Root 重新选择包含我的 .java 的 src 文件夹并点击 Apply。最后,InteliJ 会看到项目中的文件,并且文件夹在主视图中获得蓝色方块。
【讨论】:
【参考方案4】:我用这种方式修复了它:
File > Project Structure > Modules > Sources
然后将java文件目录标记为Sources。
【讨论】:
【参考方案5】:解决:“源根目录之外的 Java 文件”
-
打开项目结构。
在左侧窗格的项目设置中选择模块。
单击您的 Java 文件所在的文件夹(显示源根目录之外的文件)。
然后从 Mark as: 选项中选择 Sources。
对多个文件夹应用相同的步骤。
【讨论】:
这是正确答案,我已投赞成票【参考方案6】:对于像我这样也看到 POM 文件被划掉并变灰(忽略)的人:
你可以右击POM.xml,选择“Maven - Unignore projects”。
【讨论】:
【参考方案7】:右键 pom.xm >> maven >> 重新加载项目
【讨论】:
【参考方案8】:在 intellij 中: 点击Maven, 选择项目和权利, 选择 Unignore Projects
【讨论】:
正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center。【参考方案9】:前往
File >>Project Structure>>Modules>> Import Module>> (At this point your src folder will appear on the right most pane automatically ) >> Apply >> OK
【讨论】:
【参考方案10】:我只想在这里解决这个问题,因为上述方法都不起作用:
如果您的项目中有多个 pom 文件,请在右侧的 Maven 侧边栏上单击加号 ('+') 按钮,然后导航到另一个没有 Maven ('M') 图标的 pom 文件在项目的项目结构中添加到它(左侧边栏)。
然后点击“确定”——这会从未使用的 pom 文件中加载所有 Maven 依赖项,对我来说,一切终于修复了!
Maven 侧边栏 > 加号图标 (+) > 直接指向其他 pom 文件 > 'ok'
【讨论】:
【参考方案11】:我不得不打开我正在处理的模块到一个新窗口来解决这个问题。
【讨论】:
【参考方案12】:讨厌添加另一种方法;但是在尝试使用上述方法并失败后,这个对我有用。 我有一个多模式项目。 取消链接 Maven 工作区中的所有 maven 项目,并通过单击项目工作区中的根 poom.xml 重新加载为 maven 项目。 不确定这是否总是对所有人都有效。
【讨论】:
以上是关于源根 intelliJ 之外的 Java 文件的主要内容,如果未能解决你的问题,请参考以下文章
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/intellij/junit5/JUn
Intellij 代理抛出异常错误: java.rmi.server.ExportException: Port already in use: 1099,端口被占用
Intellij 代理抛出异常错误: java.rmi.server.ExportException: Port already in use: 1099,端口被占用