Ant 设置代理服务器

来源:互联网 发布:黑客用函数语言编程 编辑:程序博客网 时间:2024/06/06 16:26

Ant

由于一项作业的需求,需要编译Nutch,Nutch使用Ant进行项目管理,其中又用到了ivy来分析和下载项目的jar包依赖。但是众所周知的而原因,官方仓库根本无法使用,替换了几个官方推荐镜像也没有作用。找了下国内的镜像,也没有找到合适的。 所幸,我一直有使用GoAgent,所以想着通过代理下载依赖。

Windows设置方法

GoAgent的代理地址是本机 127.0.0.1端口为 8087,本方法同样适用于其他代理服务器
在%ANT_HOME%\bin\ant.bat文件最前方添加如下代码:

set ANT_OPTS=-Dhttp.proxyHost=代理服务器地址(127.0.0.1) -Dhttp.proxyPort=代理服务器端口(8087

ant是有java编写,代码作用就是在启动java虚拟机时,传入两个参数,来时java虚拟机进程按照设定的代理访问互联网。

如果你的代理服务器需要用户密码验证,则需要如下设置,多出两个参数

set ANT_OPTS=-Dhttp.proxyHost=代理服务器地址-Dhttp.proxyPort=代理服务器端口 -Dhttp.proxyUserName=用户名 -Dhttp.proxyPassword=密码

我通过免费的GoAgent来加载依赖最终编译用时

BUILD SUCCESSFULTotal time: 41 minutes 35 seconds

还能忍受,如果使用付费或者更加稳定的VPN的话应该效果应该可以。


2016-03-12更新

通用设置

上面的方法适用于windows,我尝试了类似的方法在Linux上,包括在.bashrc等文件上加入环境变量,试图修改ant脚本,但都没有起到好的效果。最终查看ant官方文档找到一劳永逸的办法。。。 (⊙﹏⊙)b
原来这么简单,还是要多看文档啊。。。文档Setproxy Task
简述就是可以在build.xml文件中加入如下属性:
<setproxy proxyhost="${proxy.host}"
proxyport="${proxy.port}"
nonproxyhosts="xyz.svn.com"/>

其中proxyhost为代理地址,proxport为端口,nonproxyhosts一般可以不用,这个属性可以设置白名单,是某些域名不走代理。

0 0
原创粉丝点击