Java IntellijIDEA无法识别Maven依赖项中指定的类
我在IntellijIDEA有一个项目,是用Maven创建的。然后,我在Pom.xml文件中指定了一组依赖项和外部存储库 如果我执行“mvn安装”,该项目在命令行上构建得很好。当我打开IDE中的任何代码文件时,尽管它说Maven依赖项处理的所有类都无法识别——就像我从未将所需JAR添加到构建路径中的普通项目一样 我知道在我的EclipseMaven项目(而不是IntelliJ)中,它通常会在左侧显示一个额外的目录,上面写着“Maven依赖项”,并列出通过Maven拉入的JAR。我在这里看不到。我做错了什么Java IntellijIDEA无法识别Maven依赖项中指定的类,java,maven,intellij-idea,Java,Maven,Intellij Idea,我在IntellijIDEA有一个项目,是用Maven创建的。然后,我在Pom.xml文件中指定了一组依赖项和外部存储库 如果我执行“mvn安装”,该项目在命令行上构建得很好。当我打开IDE中的任何代码文件时,尽管它说Maven依赖项处理的所有类都无法识别——就像我从未将所需JAR添加到构建路径中的普通项目一样 我知道在我的EclipseMaven项目(而不是IntelliJ)中,它通常会在左侧显示一个额外的目录,上面写着“Maven依赖项”,并列出通过Maven拉入的JAR。我在这里看不到。我
我的屏幕是这样的:
由于某种原因,重新导入没有起到作用。看了这个,
我设置了自动导入,然后问题就消失了;希望它能帮助其他人。谢谢大家的建议:)。我遇到了类似的问题。对我来说,结果是我错误地导入了项目。我一直在做
import project
<navigate to existing project and click top level directory>
follow the wizard
导入项目
跟随向导
解决我的maven问题的方法是
import project
<navigate to existing project and click the pom.xml
follow the wizard
导入项目
在一台新电脑上安装IntelliJ IDEA后,我发现自己也有同样的问题
我必须更新远程maven存储库。(Settings>Maven>Repositories
)
本地和远程回购协议都需要更新。在这之前,遥控器从未更新过。重启后,一切正常。您可能需要重新导入项目。在将Intellij升级到1.4.15后,我也遇到了这种情况。我试图以相同的结果重新导入整个项目,但启用Maven自动导入成功了。您可以转到:
文件>设置>构建、执行、部署>构建工具>Maven
并检查您的pom.xml是否不在“忽略的文件”列表中。通过Intellij对存储库进行简单的重新导入和/或更新对我来说并不管用
相反,我不得不删除完整的~/.m2/repository
目录,让maven自己来整理一切。之后Maven->Reimport
完成了它。看起来intelliJ忽略pom文件有几个有效的原因。
在我的案例中,前面的答案都不起作用,因此,如果其他人遇到这个问题,下面是有效的方法:
在本例中,IntelliJ完全忽略了模块3。该目录中的pom.xml甚至没有被视为maven pom
我的项目结构如下:
myProject
module1
module2
module3
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>devs</groupId>
<artifactId>myProject</artifactId>
<version>0.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>myProject</name>
<modules>
<module>module1</module>
<module>module2</module>
<modules>
<profiles>
<profile>
<id>CompleteBuildProfile</id>
<modules>
<module>module3</module>
</modules>
</profile>
</profiles>
</project>
但是,我的(简化的)pom结构如下:
myProject
module1
module2
module3
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>devs</groupId>
<artifactId>myProject</artifactId>
<version>0.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>myProject</name>
<modules>
<module>module1</module>
<module>module2</module>
<modules>
<profiles>
<profile>
<id>CompleteBuildProfile</id>
<modules>
<module>module3</module>
</modules>
</profile>
</profiles>
</project>
4.0.0
开发人员
我的项目
0.0-快照
聚甲醛
我的项目
模块1
模2
CompleteBuildProfile
模块3
为了解决这个问题,我临时修改了root
元素以添加到module3中
<modules>
<module>module1</module>
<module>module2</module>
<module>module3</module>
<modules>
模块1
模2
模块3
接下来重新导入根pom,IntelliJ将添加模块。
完成后,恢复pom。IntelliJ将询问您是否还希望从项目结构中删除module3
。单击No
砰!完成。模块3工作,我可以再次从IntelliJ运行集成测试:D这个问题是由于我在第一次启动IntelliJ时选择了要导入的项目目录,而不是项目的pom.xml
文件
关闭问题项目,然后再次执行导入过程,但选择pom.xml
会导致IDE中的项目完全正常工作。在我的例子中,问题是项目在maven2中,而intellj是为maven3配置的。在设置中切换到maven2解决了问题对我来说,问题似乎与maven helper插件()冲突
我禁用它,它会再次工作:)转到
文件>设置>构建、执行、部署>构建工具>Maven
并检查Maven主目录。这应该与命令行中使用的maven安装相同可能对像我这样的人有用。
建议的修复方案都不起作用。事实上,在我解决了主要问题之前,maven的安装位置问题
在我的例子中,我没有使用标准位置。在maven设置(settings/maven/maven home repository)中更改该位置就成功了
我的2美分。对我来说,诀窍是在文件>项目设置>模块>依赖项中添加依赖项。对我来说,文件>>无效缓存/重新启动>>无效和重新启动在IntelliJ中工作出于我不理解的原因,在我的情况下,我需要在构建、执行和执行中打开“始终更新快照”设置,部署>构建工具>Maven
这使得IntelliJ重新下载依赖项并使其工作。缓存导致了问题!确保执行以下操作:
在终端中,转到项目/模块:
mvn clean install
在您的IntelliJ中:
文件>无效缓存>无效
右键单击project/module>Maven>Reimport
只需删除项目的.idea文件夹,然后在IntelliJ中重新导入项目。如果pom.xml中存在特定于组织的依赖项,则需要更新项目的setting.xml路径,该路径默认设置为Ubuntu中的用户目录:/home/user/.m2/settings.xml->(将其更改为ApacheMaven配置路径)
转到->intellij设置->构建、执行、部署->构建工具->Maven->用户设置文件
就我的情况而言,我应该离线检查工作
转到文件>设置>生成、执行、部署>生成工具>Maven
然后检查脱机工作重新启动、无效缓存、退出