Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java IntelliJ未在maven项目中加载可传递依赖项_Java_Maven_Intellij Idea - Fatal编程技术网

Java IntelliJ未在maven项目中加载可传递依赖项

Java IntelliJ未在maven项目中加载可传递依赖项,java,maven,intellij-idea,Java,Maven,Intellij Idea,我制作了一个小库,我们称之为lib。它依赖于另一个库,sublib,该库在Maven central中提供: lib/pom.xml: 第三方 亚基 x 现在我正试图在我的项目proj中使用lib。我已将其设置为依赖项: proj/pom.xml: mynamespace 解放党 Y 当我运行mvn exec:java-dexec.mainClass=mynamespace.proj.Main时,程序运行正常。 但是,如果从IntelliJ运行它,则会出现以下错误: java.lang.

我制作了一个小库,我们称之为
lib
。它依赖于另一个库,
sublib
,该库在Maven central中提供:

lib/pom.xml


第三方
亚基
x
现在我正试图在我的项目
proj
中使用
lib
。我已将其设置为依赖项:

proj/pom.xml


mynamespace
解放党
Y
当我运行
mvn exec:java-dexec.mainClass=mynamespace.proj.Main
时,程序运行正常。 但是,如果从IntelliJ运行它,则会出现以下错误:

java.lang.NoClassDefFoundError:3rdparty/SomeSubLibClass
在mynamespace.SomeLibClass.method(SomeLibClass.java:100)中

这似乎表明IntelliJ没有加载可传递的
sublib
依赖项。如何解决此问题?

您可以手动右键单击文件树中的
pom.xml
文件,然后选择
maven>reimport

有时你会看到一个弹出窗口,上面写着“Maven项目需要导入”;您应该选择
启用自动导入

此选项可在
首选项>Maven>导入>[x]自动导入Maven项目中找到(默认情况下未选中):


对我有用的是从使用maven(Intellij)版本到使用以前安装在我机器上的最新版本的变化。

我也遇到了类似的问题。下面的命令解决了问题。它将所有依赖项jar下载到我的IDEA项目中

mvn -U idea:idea

有时我必须右键单击文件树中的
pom.xml
,然后选择
maven>reimport
。(以防你还没有试过这个)@kuporific谢谢,已经修好了!我已经尝试过“同步”和类似的选项,但还没有找到。。。如果你把它变成一个答案,我会接受它。在这个上下文中,“同步”意味着“与文件系统同步”,如果你的大脑中有Maven,这是不直观的。但是自动导入是打开的,所以这并没有解决问题。我很好奇,当重新导入并没有解决问题时,是否有人有办法解决这个问题。