Поместите зависимости в корневую папку lib
У меня есть EJB/Web-проект, который я создал с помощью NetBeans. Я создал проект с NetBeans, чтобы у нас был быстрый рабочий прототип. Теперь я конвертирую это в Gradle. Я использую ушной плагин и мою структуру
-root
|-- ejb.jar
|-- web.war
строит. Мои зависимости определены в файле build.gradle в каждом подпроекте (ejb и web). Теперь я хочу, чтобы мои зависимости находились в папке ear / lib, а не разбивались по папкам ejb / lib и web / lib. Я знаю концепцию зависимостей earlib, но я чувствую, что мне не нужно указывать это в моем проекте web и ejb. Нужно ли писать задачу муравья, чтобы сделать это, или есть элегантный способ. Я пытаюсь представить, как netbeans строит войну как можно лучше.
1 ответ
Правильное решение заключается в управлении областью ваших зависимостей.
В проекте jar зависимости помещаются в область компиляции, это нормально, потому что jar не добавляет зависимости при упаковке
В военном проекте зависимости помещаются в область предусмотренной компиляции. Это позволяет мне компилировать мою войну, но не упаковывать мои библиотеки.
В моем корне моего проекта у меня есть файл сборки уха. В этом файле сборки я заново добавил все зависимости (это все еще не так, потому что я дважды определил свои зависимости) с областью earLib. Таким образом, мои зависимости помещаются в корень моего проекта в моей определенной папке lib.