Apache Ivy внутри NetBeans для разрешения импорта

Я хотел бы использовать Apache Ivy для разрешения некоторых зависимостей (импорта) внутри моего проекта на Java. Я использую NetBeans 7.1.2 (версия Java EE). Я установил плагин IvyBeans (версия 1.2). Затем я построил свой проект, и Ivy создала папки IvyFiles и IvyLibraries внутри папки моего проекта (обе они пусты). Проблема в том, что никакие библиотеки не разрешены. Я получаю следующее сообщение от строителя:

[PATH_TO_PROJECT]\nbproject\ivy-impl.xml:92: settings file does not exist: [PATH_TO_PROJECT]\${ivy.settings.location}

Это результат ivy-resolve:

Resolving COMPILE scope ...
:: loading settings :: url = jar:file:/C:/Users/jakub/.netbeans/7.1.2/modules/ext/ivy-2.1.0.jar!/org/apache/ivy/core/settings/ivysettings.xml
:: resolving dependencies :: IvyThriftApp#IvyThriftApp;1.0
    confs: [compile]
:: resolution report :: resolve 6ms :: artifacts dl 0ms
    ---------------------------------------------------------------------
    |                  |            modules            ||   artifacts   |
    |       conf       | number| search|dwnlded|evicted|| number|dwnlded|
    ---------------------------------------------------------------------
    |      compile     |   0   |   0   |   0   |   0   ||   0   |   0   |
    ---------------------------------------------------------------------
Resolving PROCESSOR scope ...
:: loading settings :: url = jar:file:/C:/Users/jakub/.netbeans/7.1.2/modules/ext/ivy-2.1.0.jar!/org/apache/ivy/core/settings/ivysettings.xml
:: resolving dependencies :: IvyThriftApp#IvyThriftApp;1.0
    confs: [compile]
:: resolution report :: resolve 3ms :: artifacts dl 0ms
    ---------------------------------------------------------------------
    |                  |            modules            ||   artifacts   |
    |       conf       | number| search|dwnlded|evicted|| number|dwnlded|
    ---------------------------------------------------------------------
    |      compile     |   0   |   0   |   0   |   0   ||   0   |   0   |
    ---------------------------------------------------------------------
Resolving RUNTIME scope ...
:: loading settings :: url = jar:file:/C:/Users/jakub/.netbeans/7.1.2/modules/ext/ivy-2.1.0.jar!/org/apache/ivy/core/settings/ivysettings.xml
:: resolving dependencies :: IvyThriftApp#IvyThriftApp;1.0
    confs: [compile, runtime]
:: resolution report :: resolve 3ms :: artifacts dl 0ms
    ---------------------------------------------------------------------
    |                  |            modules            ||   artifacts   |
    |       conf       | number| search|dwnlded|evicted|| number|dwnlded|
    ---------------------------------------------------------------------
    |      compile     |   0   |   0   |   0   |   0   ||   0   |   0   |
    |      runtime     |   0   |   0   |   0   |   0   ||   0   |   0   |
    ---------------------------------------------------------------------
Resolving COMPILE_TEST scope ...
:: loading settings :: url = jar:file:/C:/Users/jakub/.netbeans/7.1.2/modules/ext/ivy-2.1.0.jar!/org/apache/ivy/core/settings/ivysettings.xml
:: resolving dependencies :: IvyThriftApp#IvyThriftApp;1.0
    confs: [compile, compile-test]
:: resolution report :: resolve 4ms :: artifacts dl 0ms
    ---------------------------------------------------------------------
    |                  |            modules            ||   artifacts   |
    |       conf       | number| search|dwnlded|evicted|| number|dwnlded|
    ---------------------------------------------------------------------
    |      compile     |   0   |   0   |   0   |   0   ||   0   |   0   |
    |   compile-test   |   0   |   0   |   0   |   0   ||   0   |   0   |
    ---------------------------------------------------------------------
Resolving RUNTIME_TEST scope ...
:: loading settings :: url = jar:file:/C:/Users/jakub/.netbeans/7.1.2/modules/ext/ivy-2.1.0.jar!/org/apache/ivy/core/settings/ivysettings.xml
:: resolving dependencies :: IvyThriftApp#IvyThriftApp;1.0
    confs: [compile, compile-test, runtime, runtime-test]
:: resolution report :: resolve 4ms :: artifacts dl 0ms
    ---------------------------------------------------------------------
    |                  |            modules            ||   artifacts   |
    |       conf       | number| search|dwnlded|evicted|| number|dwnlded|
    ---------------------------------------------------------------------
    |      compile     |   0   |   0   |   0   |   0   ||   0   |   0   |
    |   compile-test   |   0   |   0   |   0   |   0   ||   0   |   0   |
    |      runtime     |   0   |   0   |   0   |   0   ||   0   |   0   |
    |   runtime-test   |   0   |   0   |   0   |   0   ||   0   |   0   |
    ---------------------------------------------------------------------

Есть ли какое-то непонимание с моей стороны того, как Apache Ivy работает в NetBeans или вообще? Мое видение состояло в том, что я использую некоторые зависимости внутри своего проекта - затем я создаю его, и Ivy автоматически получает зависимости из Интернета, и мне не нужно заботиться о добавлении всех внешних библиотек в мой проект.

Любые предложения, как решить эту проблему?

Большое спасибо за помощь или любые рекомендации :)


person Reshi    schedule 04.06.2012    source источник


Ответы (1)


Похоже, твоя решимость плюща работает нормально. Как в вашем файле сборки используются разрешенные банки для заполнения пути к классам вашего проекта ANT?

Одним из популярных вариантов является вызов задачи ivy retrieve. для заполнения локального каталога lib:

   <ivy:retrieve/>
   <path id="build.path">
      <fileset dir="lib" includes="**/*.jar"/>
   </path>

Я предпочитаю и рекомендую использовать задачу ivy cachepath. :

   <ivy:cachepath pathid="build.path"/>

Более полный пример (с использованием конфигураций плюща) приведен здесь:

Сценарий Ant для выбора между несколькими версиями путей к классам< /а>

person Mark O'Connor    schedule 05.06.2012