Как я могу получить Ivy для разрешения зависимостей (включая зависимости от changing="true"
) от локального кеша при отключении/отключении?Разрешение зависимостей Айви Айви при отключении/отключении?
Я работаю над проектом на основе Java с открытым исходным кодом, который использует Apache Ivy для разрешения и загрузки зависимостей сторонних разработчиков. У проекта build.xml
есть цель муравья с именем resolve
, которая загружает Ivy (если необходимо), а затем использует Ivy для извлечения необходимых банок.
Все работает отлично, когда он-лайн. Однако без доступа в Интернет ant resolve
не удается, даже если требуемые банки находятся в локальном кэше Ivy (~/.ivy2/cache
). Похоже, что Ivy пытается подключиться к репозиторию Maven для обновления зависимостей changing="true"
.
Я получаю ошибку похож на следующее:
[ivy:retrieve] You probably access the destination server through a proxy server that is not well configured.
[ivy:retrieve] You probably access the destination server through a proxy server that is not well configured.
[ivy:retrieve]
[ivy:retrieve] :: problems summary ::
[ivy:retrieve] :::: WARNINGS
[ivy:retrieve] Host repo.example.com not found. url=http://repo.example.com/exampleorg/examplename/examplerev/ivys/ivy.xml
[ivy:retrieve] Host repo.example.com not found. url=http://repo.example.com/exampleorg/examplename/examplerev/jars/examplename.jar
[ivy:retrieve] module not found: exampleorg#examplename;examplerev
[ivy:retrieve] ==== local: tried
[ivy:retrieve] ~/.ivy2/local/exampleorg/examplename/examplerev/ivys/ivy.xml
[ivy:retrieve] -- artifact exampleorg#examplename;examplerev!examplename.jar:
[ivy:retrieve] ~/.ivy2/local/exampleorg/examplename/examplerev/jars/examplename.jar
[ivy:retrieve] ==== shared: tried
[ivy:retrieve] ~/.ivy2/shared/exampleorg/examplename/examplerev/ivys/ivy.xml
[ivy:retrieve] -- artifact exampleorg#examplename;examplerev!examplename.jar:
[ivy:retrieve] ~/.ivy2/shared/exampleorg/examplename/examplerev/jars/examplename.jar
[ivy:retrieve] ==== repo: tried
[ivy:retrieve] http://repo.example.com/exampleorg/examplename/examplerev/ivys/ivy.xml
[ivy:retrieve] -- artifact exampleorg#examplename;examplerev!examplename.jar:
[ivy:retrieve] http://repo.example.com/exampleorg/examplename/examplerev/jars/examplename.jar
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:retrieve] :: UNRESOLVED DEPENDENCIES ::
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:retrieve] :: exampleorg#examplename;examplerev: not found
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:retrieve]
[ivy:retrieve] :: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS
BUILD FAILED
~/exampleproj/build.xml:123: impossible to resolve dependencies:
resolve failed - see output for details
Запуск ant -verbose resolve
как предложил предупредительные гравюр следующие строки в выводе:
[ivy:retrieve] don't use cache for exampleorg#examplename;examplerev: changing=true
Как я могу получить Ivy разрешить changing="true"
зависимостей от кеша, когда он отключен, но продолжайте запрашивать репозиторий, каждый из которых создается в режиме онлайн?
Я дал ответ на это в этот вопрос: http://stackoverflow.com/questions/6971517/how-do-i-tell-ivy4r-to-stay-offline – oers
Это второй вопрос. На первый ответили –
@Mark: Вы правы. Я отредактировал вопрос, чтобы удалить «как условно установить« ivy.cache.ttl.default = вечный »? потому что это отдельный вопрос. Но мой оригинальный вопрос - как разрешать зависимости в автономном режиме - все еще остается без ответа. –