当前位置: 首页 > 知识库问答 >
问题:

在IntelliJ IDEA中导入Maven依赖项

罗翰
2023-03-14

我有一个关于智能想法11的小问题。我刚刚从subversion导入了一个项目--它是一个maven项目。但是我在maven库依赖项中遇到了一个问题,因此我无法自动包含所有maven依赖项-IDEA仅在我打开该类时才显示依赖项错误/这就是我在这里得到的结果:

所以我希望所有的依赖项都自动添加--这是可能的还是我必须通过所有的类文件来识别和添加maven依赖项?!

但我认为逻辑上它不会包含和检查前面的新依赖项?!...在intellij-auto export dependencies to classpath中有没有设置区域?!

共有2个答案

朱经武
2023-03-14

文件[menu]->设置->Maven->导入并取消选中“使用maven3导入项目”

参考:http://youtrack.jetbrains.com/issue/idea-98425(可能还有其他一些想法)

您可以通过在项目名称本身上点击鼠标来看到真正的失败。

在我的例子中,它说“problems:No versions available for xxx”或“failed to read descriptor for artifact org.xy.z”ref:https://youtrack.jetbrains.com/issue/idea-128846和https://youtrack.jetbrains.com/issue/idea-152555

在本例中,我处理的是一个没有相关pom文件的jar(在我们的maven nexus repo中,也在我的本地存储库中)。如果这也是您的问题,“当前的工作:如果您实际上不需要在自己的代码中使用jar中的类(例如,仅使用可传递的maven依赖项),您实际上可以从pom(临时)注释它,重新加载maven项目,然后取消它的注释。在这之后,IntelliJ”记住“它以前的工作依赖项。如果您从依赖项的可传递链中遇到它,临时添加一个maven可传递的exclude也可以做到这一点。”

另一个可能有用的方法是使用比捆绑的3.0.5版本更“新的版本”的maven。为了将它设置为将其作为默认值,关闭所有intellij窗口,然后打开preferences->build,execution and deployment->build tools->maven,并更改maven主目录,当您调整该目录时,它应该在顶部显示“for default project”(for default project),尽管您也可以针对特定项目进行调整,只要您在调整后“re import”(重新导入)。

正在删除intellij缓存文件夹(Windows:HomePath/.{IntellijIdea,IdeaC}XXX linux~/.ideaic15)和/或卸载并重新安装intellij本身。这也可以通过转到文件[menu]->无效缓存/重新启动...来完成。单击无效并重新启动。这将重新索引您的整个项目,并解决许多难以跟踪的问题与IntelliJ。

翟浩穰
2023-03-14

只要POM兼容并且所有依赖项都可用,IntelliJ就应该自动下载并将所有依赖项添加到项目的类路径中。

当将Maven项目导入IntelliJ时,通常会出现一个信息框,询问您是否要为Maven项目配置自动导入。这意味着,如果您对POM进行任何更改,这些更改将自动加载。

您可以启用这样的特性,转到文件>设置>Maven>导入,有一个复选框,上面写着“自动导入Maven项目”。

如果那无济于事,那么我会建议做一次全面的清理,重新开始:

  • 关闭项目窗口(和IntelliJ),并删除所有*.iml文件和所有.idea文件夹(每个模块应该有一个)
  • 从命令行运行mvn clean install
  • 将项目重新导入IntelliJ,并在它要求您启用自动导入时注意

IntelliJ 2016更新:

IntelliJ首选项中的Import Maven Projects Automatic设置已移动到Build,Execution,Deployment>Build Tools>Maven>Importing。

 类似资料:
  • 对于我的一些模块,Intellij的想法不是导入依赖项和插件。只导入活循环。 当我在命令行编译时,POM是有效的。我已经删除了模块并重新导入它们。我删除了他们的项目,并重新导入它。 所以我想知道Intellij在模块上的想法信息被删除后是否有一些秘密缓存。

  • 问题内容: 我对IntelliJ IDEA 11有一个小问题。我刚刚从subversion导入了一个项目-它是一个maven项目。但是我在maven库依赖项方面存在问题,因此我无法自动包含所有maven依赖项-IDEA仅在打开该类时才显示依赖项错误/那就是我在这里得到的: 因此,我希望所有依赖项都自动添加-是否可行?还是我必须遍历所有类文件才能识别并添加Maven依赖项? 更新:经过一些修改后,我

  • 我在IntellijIDEA中有一个项目是用Maven创建的。然后我在pom.xml文件中指定了一组依赖项和外部存储库。 如果我执行“mvn install”,那么项目在命令行上构建得很好。但是,当我打开IDE中的任何代码文件时,它会说Maven依赖项处理的所有类都无法识别--如果我从未将所需的JAR添加到构建路径中,这对于一个正常的项目来说是一样的。 我知道在我的Eclipse Maven项目(

  • 在静态编程语言SQL框架JetBrain的公开的github页面上,有一个页面链接,您可以在该页面上获取该库的maven依赖项(https://bintray.com/kotlin/exposed/exposed/view#)。同样的依赖项也可以在MVNRepostory(https://mvnrepository.com/artifact/org.jetbrains.exposed/expose

  • 我有一个多模块的项目,在其中一个模块,我包括依赖,一些是可见的,另一个没有;试着解释得更好: 在Utenti的项目中,我导入: 来自模块DataModelIbm 来自CommonResources:

  • 我在maven中学习了“导入”范围,并做了下面的一个示例项目, Project_1POM文件: 项目2 POM文件: 但是,这会引发一个错误,说明JUnit包在Project2中不可用。当我从POM文件中删除依赖管理标记project_1。一切工作正常。但是根据专家医生的说法, 此范围仅在节中pom类型的依赖项上受支持。它表示要用指定POM节中的有效依赖项列表替换的依赖项。由于它们被替换,具有导入