在IDEA 14中导入maven项目后,某些类不被识别为java类。 。 并且这些类未标记为源的项目(蓝色)。
我对项目不太熟悉,所以有人能告诉我这是pom文件中的一些错误,或者这可能是有效的情况。如果这是错误,请如何解决此问题。
我想提一下,重新导入项目没有帮助(我也删除了.idea文件夹),所以我认为问题与pom.xml中的错误配置有关。这是一个多模块项目,项目中有不同的maven配置文件。
感谢任何想法和帮助))
答案 0 :(得分:3)
如果右键单击目录并单击
将目录标记为 - >来源根
Intellij Idea会将文件识别为Java文件
答案 1 :(得分:2)
默认情况下,Maven希望所有源代码都位于/src/main/java
(或/src/test/java
)。您可以拥有居住在其他地方的代码,但是您必须告诉Maven pom.xml
文件中的这些非常规路径。
我的猜测是你的源码存在于这些目录之外,并且未在pom.xml
文件中引用。如果这是真的,我猜你的命令行maven版本也会被破坏。
This SO question & answer解释了如何告诉maven关于标准目录之外的来源。它看起来像这样:
<build>
<sourceDirectory>${basedir}/src/custom</sourceDirectory>
</build>
IntelliJ IDEA将在您的pom.xml文件中识别此设置,并将相应的目录设置为项目中的源文件夹。
然而,IMO除非你真的需要,否则偏离Maven惯例并不是一个好主意。您遵循的约定越多,pom
的复杂程度就越低。如果他们已经拥有其他Maven项目的经验,它还可以帮助新开发人员快速完成项目工作。