无法在IntelliJ Idea 2016.1.1中导入Maven项目。

22
我正在尝试使用IntelliJ Idea 2016.1.1导入一个项目,具体步骤如下:文件->从现有源导入项目->选择所需的pom.xml

进入到这个对话框后,但是点击“下一步”按钮后没有任何反应。

进入到这个对话框后,但是点击“下一步”按钮后没有任何反应。

你确定pom文件有效吗? - uniknow
你尝试过将pom.xml作为新项目打开吗?我记得IntelliJ会提供创建一个围绕它的项目。如果其他方法都失败了,也许你可以使用maven-idea-plugin来生成项目文件。 - Hank D
是的,我尝试了所有这些,并且我的pom文件是有效的。因为在我重新启动系统后,它可以正常工作。 - Garima Gupta
但是我仍然想知道之前可能存在什么问题导致它无法正常工作。有人可以帮忙吗? - Garima Gupta
你解决过这个问题吗?我也遇到了同样的问题。 - Ben Flowers
显示剩余2条评论
12个回答

12

我曾经遇到过同样的问题,但通过更新我的/etc/hosts文件,使得只有一个本地主机的条目,我最终解决了这个问题。

# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1       localhost
# 192.xxx.xxx.xxx localhost <-comment out this
255.255.255.255 broadcasthost
#::1             localhost <- comment out this

这对我也解决了。 - toadzky
1
@Ben:你是怎么想到这个解决方案的?这个方法对我也有效。但是你是怎么将hosts文件和IDEA无法解析pom.xml联系起来的呢? - devdanke
我想知道Ben是如何知道这个问题也可能与此有关的。我曾经遇到过类似的问题,通过修复hosts文件来解决。 - Truong Nguyen
嗨@devdanke,这是很久以前的事情了,不幸的是我已经忘记了我是如何解决这个问题的。我相信这与使用此配置时maven解析失败有关。 - Ben Flowers
我终于也找到了这个解决方案,并且这个方法对我很有用。花费了很多功夫才找到这个解决方案,为了让更多人知道它,这里是 JetBrains 网站上建议使用此解决方案的评论线程链接:https://youtrack.jetbrains.com/issue/IDEA-64132#comment=27-1411307 - Daniel Skarbek

10

在我的情况下,通过在 IntelliJ IDEA 设置中设置 JDK 来解决了这个问题。具体如下:

Settings

在选择正确的 JDK 之前,该字段中显示为红色文本。


1
对我来说它没有起作用,但是这个截图帮助我找到了适合我的解决方案:在那一行的上面有一行用于设置虚拟机的最大内存,这是导致我的笔记本电脑出现问题的真正原因。 - Luca Tampellini
1
对我有用!谢谢 - Fzum

2

我刚遇到同样的问题,在查看idea.log后,我找到了问题所在:

这里

Caused by: com.intellij.execution.process.ProcessNotCreatedException: Cannot run program "/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home/bin/java" (in directory "/Users/xxx/Library/Application Support/JetBrains/Toolbox/apps/IDEA-U/ch-0/182.4129.33/IntelliJ IDEA.app/Contents/bin"): error=2, No such file or directory
    at 
com.intellij.execution.configurations.GeneralCommandLine.createProcess(GeneralCommandLine.java:408)
    at com.intellij.execution.process.OSProcessHandler.startProcess(OSProcessHandler.java:51)
    at com.intellij.execution.process.OSProcessHandler.<init>(OSProcessHandler.java:44)
    at org.jetbrains.idea.maven.server.MavenServerManager$2.startProcess(MavenServerManager.java:367)
    at org.jetbrains.idea.maven.server.MavenServerManager$2.execute(MavenServerManager.java:358)
    at com.intellij.execution.rmi.RemoteProcessSupport.startProcess(RemoteProcessSupport.java:212)
    at com.intellij.execution.rmi.RemoteProcessSupport.acquire(RemoteProcessSupport.java:139)
    ... 28 more

这里看一下

jdk1.7.0_79.jdk 已经被移除,因此无法使用...


2

我在我的备用计算机上遇到了类似的问题,当创建/导入Maven项目时出现了问题。由于某些原因,它似乎失去了对Java SDK的访问权限并且无法找到,即使我尝试重新导入它也不行。尝试重新选择Java SDK也没有帮助。最终我采取了以下解决方案:

  1. 卸载IntelliJ(2016.2.4)
  2. 重新安装最新版本的Java JDK 1.8,并重启系统
  3. 安装最新版本的IntelliJ(2016.2.5)
  4. 第一次启动IntelliJ,并在第一次创建新项目时确保选择正确的SDK路径(参见图像) enter image description here
  5. 现在你应该能够(点击下一步)创建/导入新的Maven项目。

其他答案没有对我有什么帮助。


1
只需卸载并重新安装IntelliJ即可解决我的问题。 - brokethebuildagain
1
在我的情况下,问题是由于我刚刚更新了Java而引起的。设置正确的(新的)SDK路径使我能够导入我的项目。 - tytk

1
我遇到这个问题时,一开始似乎是因为项目根目录中的路径中使用了波浪号~。 如果您尝试使用~,它似乎也会变得不稳定。

更多调查揭示:

/home/user/.IdeaIC15/system/log(对于其他系统可能有所不同)

在该目录中终端中运行

tail -100f idea.log

并查看单击“下一个”时获得的内容

我的问题是丢失 / 损坏的java7实例

所有这些仅适用于Linux系统。


0

我曾经遇到过完全相同的问题,我的情况是一个内存问题:导入器需要比VM默认限制更多的内存,而这个限制是在安装IntelliJ后默认设置的:我默认设置了768 MB,然后将它们移动到了2048 MB。

您可以在以下位置进行设置: 首选项 |-> 构建、执行、部署 |-> 构建工具 |-> Maven |-> 导入 |-> 导入器的VM选项

VM options for Maven import in IntelliJ Idea


0
  1. 安装最新版本的Intellij Idea(默认情况下保留所有设置)和Java JDK(在IDE中称为SDK)。
  2. 创建一个新的空项目。
  3. 按Ctrl + Alt + Shift + F打开“项目结构”面板。
  4. 选择您下载的SDK,例如:C:\ Program Files \ Java \ jdk-10.0.2
  5. 应用并打开您的项目文件。
  6. 现在它可以工作了!(同时清理了我的主机文件)

0
今天我遇到了这个问题,花了我2个小时才找出并解决它。 我试图从带有'/'的perforce工作区导入项目(ABC/lighting_workspace)。
当我创建了另一个没有'/'的perforce工作区(lighting_workspace)时,我成功地导入了现有项目 :)

0

我遇到了同样的问题,后来发现目录被锁定了。尝试将文件夹重命名以确认这不是你的问题。一旦锁定被移除,请尝试导入项目。


0
为了解决这个问题,我在Linux上对Intellij Java进程进行了strace,并发现它与执行Maven嵌入式jar有关。
Maven嵌入式jar的执行(进程4940):
4940 execve("/home/rudy/Softwares/jdk1.8.0_111/bin/java", ["/home/rudy/Softwares/jdk1.8.0_11"..., "-Djava.awt.headless=true", "-Didea.version==2018.1.4", "-Xmx1024m", "-Didea.maven.embedder.version=3."...
进程4940返回的错误:
4940 <... execve resumed>) = -1 ENOENT (没有这样的文件或目录)
我决定将jdk8移动到home/rudy/Softwares/jdks/jdk1.8.0_111目录中,而它之前位于home/rudy/Softwares/jdk1.8.0_111中。
在移动Intellij使用的JDK之前,似乎需要先重新配置Intellij以使用新路径,然后再使用导入Maven功能。

我犯了一个错误,确实是这样(移动JDK),Intellij无法知道JDK被移动到哪里(除非扫描整个文件系统),但它应该清楚地显示一个错误消息,而不是在“下一步”上被阻止。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接