Развертывание зависимостей Ivy + eclipse во время выполнения

У меня есть проект eclipse с управляемыми зависимостями IvyDE

Мой IvyDE что-то вроде:

<ivy-module version="2.0" 
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd">
     <info organisation="R01"
           module="myModule"
           status="integration">
     </info>

     <configurations>
         <conf name="compile" description="Used only at compile time; not deployed to the server" />
         <conf name="runtime" extends="compile" description="Deployed to the server"/>
     </configurations>

     <dependencies>
         <dependency org="com.sun.jersey" name="jersey-core" rev="1.9.1" conf="runtime"/>            
         <dependency org="javax.ws.rs" name="jsr311-api" rev="1.1.1" conf="compile"/>
     </dependencies>
</ivy-module>

У меня есть зависимости, необходимые во время компиляции и зависимости, необходимые во время выполнения

Я не знаю, возможно ли это с Apache IVY в Eclipse (IvyDE), но я хочу развернуть на сервере ТОЛЬКО RUNTIME-зависимости.

Теперь единственное решение, которое я нашел, это:

  • установить IvyDE для разрешения ВСЕХ (компиляции + времени выполнения) зависимостей и установить путь к классу модуля
  • добавьте библиотеку [Ivy] в [DeploymentAssembly] в свойствах проекта

Таким образом, все зависимости (включая зависимости времени компиляции) развертываются на сервере...

Есть ли способ добиться этого???

заранее спасибо

1 ответ

Я отвечаю на свой вопрос.

Наконец, мне удалось получить ДВЕ различные библиотеки путей, управляемых ivy, одну из которых использовали во время компиляции, а другую во время выполнения.

деталь двух управляемых плющ библиотек путей к классам

Хитрость заключается в том, чтобы включить ДВЕ управляемые ivyDE зависимости:

добавить управляемую зависимость ivyDE

Одна управляемая зависимость ivyDE должна быть для конфигурации COMPILE, а другая для конфигурации RUNTIME:

Выбор конфигурации ivyDE

(повторите для конфигурации RUNTIME)

Тогда это только вопрос настройки:

  • зависимость ivy для конфигурации COMPILE должна быть [Project Library]
  • зависимость ivy для конфигурации RUNTIME должна быть в [Deployment Assembly]

Это все!

Другие вопросы по тегам