我正在使用Intellij 14.0.3。我已经导入了一些Maven模块,这些模块在pom.xml文件中声明了依赖项。
在IDE中,当我打开一个从该依赖项导入对象的类时,导入显示为"出错"比如在这个类中对该对象的任何引用。当我单击错误并输入alt + Enter时,Intellij要求我将Maven中的依赖项添加到Classpath中。
示例:
在我的pom中我有:
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>${joda.version}</version>
</dependency>
在我的班级中,我有以下错误导入:
import org.joda.time.DateTime;
当我点击alt +输入intellij时问我:
Add library Maven: 'joda-time:joda-time:2.1' to classpath
为什么Intellij不直接在类路径中导入Maven依赖项? 在设置 - &gt; Maven - &gt;导入,我已经检查过&#34;自动导入Maven项目&#39;但它仍然没有导入依赖关系。尝试&#34;制作&#34;该项目没有成功。
感谢您的帮助。
答案 0 :(得分:4)
我终于找到了解决方案。
当项目最初导入时,我的maven settings.XML不是好的。我已经改变了工作区被导入的maven设置的路径,似乎它不能很好地工作。也许是一个错误? (intellij 14.0.3)。
我删除了m&#39工作空间,一旦获得收益就从git克隆它,并作为Maven项目导入,注意以前设置的Maven设置。
答案 1 :(得分:1)
您必须删除.m2
文件夹中的所有文件。然后像这样为maven设置setting.xml
文件。
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
http://maven.apache.org/xsd/settings-1.0.0.xsd">
...
<proxies>
<proxy>
<id>myproxy</id>
<active>true</active>
<protocol>http</protocol>
<host>proxy.somewhere.com</host>
<port>8080</port>
<username>proxyuser</username>
<password>somepassword</password>
<nonProxyHosts>*.google.com|ibiblio.org</nonProxyHosts>
</proxy>
</proxies>
...
</settings>
然后导入你的maven项目,ide会自动下载alldependencies