2013-06-18 4 views
1

У меня есть проект EJB/Web, который я создал с помощью netbeans. Я создал проект с netbeans, так что у нас скоро будет рабочий прототип. Теперь я конвертирую это в Gradle. Я использую плагин уха и мой СтруктурЗависимости места в папке root lib

-root 
|-- ejb.jar 
|-- web.war 

строит. Мои зависимости определены в файле build.gradle в каждом субпроекте (ejb и web). Теперь я хочу, чтобы мои зависимости находились в папке ear/lib вместо того, чтобы быть shatterd через папку ejb/lib и web/lib. Я знаю концепцию зависимостей earlib, но я чувствую, что мне не нужно указывать это в моем веб-проекте и проекте ejb. Нужно ли мне писать муравьиную задачу, чтобы сделать это или есть элегантный способ. Я пытаюсь представить, что netbeans строят войну как можно лучше.

ответ

0

Правильное решение - управлять областью ваших зависимостей.

В проекте баночки, зависимочтите место в рамках компиляции, это нормально, потому что банка не добавляет зависимостей при упаковке

В военном проекте, зависимости помещается в рамках providedCompile. Это позволяет мне скомпилировать мою войну, но не упаковывать мои библиотеки.

В моем корне моего проекта у меня есть файл для сборки ушей. В этом файле сборки я повторно добавил все зависимости (это все еще не так, потому что я дважды определил свои зависимости) с областью earLib. Таким образом, мои зависимости находятся в корне моего проекта в моей папке с определенными папками.