我正在使用Mac的OSX 10.9.2,并尝试使用NetBeans 7.2.1和Maven 3.1.1创建一个Maven项目
在NetBeans中,我在"首选项->常规->代理设置"中正确设置代理设置。
在/usr/local/apache-maven-3.1.1/conf/settings.xml
中,我正确设置了代理设置。
它在CLI中工作,当我下载repo时,例如:
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
但如果我尝试在NetBeans中创建一个项目,它不起作用,我得到错误:
扫描项目…下载:http://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-clean-plugin/2.4.1/maven-clean-plugin-2.4.1.pomAug 04, 2014 6:16:42 PMorg.apache.maven.wagon.providers.http.httpclient.impl.client.DefaultRequestDirectortryConnect INFO: I/O异常(java.net.SocketException)捕获时连接到目标主机:网络不可达,2014年8月4日6:16:42点org.apache.maven.wagon.providers.http.httpclient.impl.client.DefaultRequestDirectortryConnect INFO:重试连接
为什么NetBeans不选择Maven代理设置?
netbeans默认使用自己安装的maven 3.0.5。不是你的3.1.1,除非你指定它在Tools/Options/Java/Maven中使用。Conf/settings.xml对于给定的maven安装是私有的,而~/settings.xml是私有的。M2包含您的用户设置
NetBeans在您的用户下创建了一个.m2/目录,并将repo下载到该目录中。
我进入。m2/并创建了一个链接到文件/usr/local/apache-maven-3.1.1/conf/settings.xml
ln -s /usr/local/apache-maven-3.1.1/conf/settings.xml settings.xml
对于Netbeans,如果您在代理网络下运行系统,则Maven设置需要代理设置。
打开NETBEANS_HOMEjavamavenconfsettings.xml
<proxies>
<proxy>
<active>true</active>
<host>myproxy.host.net</host>
<port>80</port>
</proxy>
</proxies>
注意:Netbeans IDE有它自己独立的配置,我们看到在第一次打开欢迎页面
在Netbeans的默认Maven中添加代理:
在netbeans.home/java/maven/conf中编辑settings.xml
在我的机器上是-/home/raman/netbeans-8.0.2/java/maven/conf
添加代理,如下所示:
<proxies>
<!-- Some bank proxy -->
<proxy>
<id>optional</id>
<active>true</active>
<protocol>http</protocol>
<username>test</username>
<password>test123</password>
<host>192.168.137.15</host>
<port>8080</port>
<nonProxyHosts>local.net|some.host.com</nonProxyHosts>
</proxy>
</proxies>