展开全部
有时候网络不能直接访问外网, 需要设置代理
设置方式如下:
一、检测本地网络是否不能直接访问Maven的远程中央仓库,命令为ping repo1.maven.org
二、要检查代理服务器是否畅通,
比如现在有一个IP地址为192.168.10.117,端口为3267的代理服务,我们需要先运行telnet 192.168.10.117 3267来检查该地址的该端口是否畅通,
如果得道出错信息需要先获取正确的代理服务器信息,
如果telnet连接正确,则输入ctrl+],然后q,回车,退出即可。三、检查完毕之后,在安装目录中编辑~/.m2/settings.xml文件,代码如下:添加代理配置如下:
<settings> ... <proxies> <proxy> <id>my-proxy</id> <active>true</active> <protocol>http</protocol> <host>192.168.10.117</host> <port>3267</port> <!-- <username>shihuan</username> <password></password> <nonProxyHosts>repository.mycom.com|*.google.com</nonProxyHosts> --> </proxy> </proxies> ...</settings>
这段配置十分简单,proxies下可以有多个proxy元素,如果你声明了多个proxy元素,则默认情况下第一个被激活的proxy会生效。
这里声明了一个id为my-proxy的代理,active的值为true表示激活该代理,protocol表示使用的代理协议,这里是http。当然,最重要的是指定正确的主机名(host元素)和端口(port元素)。
上述XML配置中我注释掉了username、password、nonProxyHost几个元素,当你的代理服务需要认证时,就需要配置username和password。
nonProxyHost元素用来指定哪些主机名不需要代理,可以使用 | 符号来分隔多个主机名。
此外,该配置也支持通配符,如*.google.com表示所有以google.com结尾的域名访问都不要通过代理。