У меня проблема, когда я определил зависимости в ivy.xml на нашем внутреннем корпоративном svn. Я могу получить доступ к этому сайту svn без какой-либо прокси-задачи в ant. В то время как мои зависимости находятся на ibiblio, это что-то вне нашего корпоративного, и для этого требуется прокси-сервер. Здесь я сталкиваюсь с проблемой использования плюща.
У меня есть следующий в файле build.xml
<target name="proxy">
<property name="proxy.host" value="xyz.proxy.net"/>
<property name="proxy.port" value="8443"/>
<setproxy proxyhost="${proxy.host}" proxyport="${proxy.port}"/>
</target>
<!-- resolve the dependencies of stratus -->
<target name="resolveTestDependency" depends="testResolve, proxy" description="retrieve test dependencies with ivy">
<ivy:settings file="stratus-ivysettings.xml" />
<ivy:retrieve conf="test" pattern="${jars}/[artifact]-[revision].[ext]"/><!--pattern here specifies where do you want to download lib to?-->
</target>
<target name=" testResolve ">
<ivy:settings file="stratus-ivysettings.xml" />
<ivy:resolve conf="test" file="stratus-ivy.xml"/>
</target>
Ниже приведена выдержка из stratus-ivysettings.xml
<resolvers>
<!-- here you define your file in private machine not on the repo (e.g. jPricer.jar or edgApi.jar)-->
<!-- This we will use a url nd not local file system.. -->
<url name="privateFS">
<ivy pattern="http://xyz.svn.com/ivyRepository/ [organisation]/ivy/ivy.xml"/>
</url>
.
.
.
<url name="public" m2compatible="true">
<artifact pattern="http://www.ibiblio.org/maven2/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]"/>
</url>
.
.
.
Итак, как можно увидеть здесь для получения ivy.xml, мне не нужен прокси-сервер в нашей собственной сети, который не может получить доступ, когда я устанавливаю прокси-сервер. Но, с другой стороны, я также использую ibiblio, который является внешним по отношению к нашей сети и работает только с прокси. Таким образом, выше build.xml не будет работать в этом случае. Может кто-нибудь помочь здесь.
Мне не нужен прокси-сервер при получении ivy.xml(как будто у меня есть прокси, плющ не сможет найти файл плюща за прокси-сервером в сети), и мне просто нужно его, когда мой резольвер отправляется на общедоступный URL-адрес.