Как мне включить тестовую банку зависимости в развертывание проекта Maven?JAVA

Программисты JAVA общаются здесь
Anonymous
Как мне включить тестовую банку зависимости в развертывание проекта Maven?

Сообщение Anonymous »

У меня есть два проекта, foo и foo-web в группе com.example . foo-web зависит от foo .

, чтобы иметь возможность разработать часть пользовательского интерфейса приложения без в зависимости от внешних служб, в Foo они реализованы фиктивные DAO).

Мы должны были переместить фиктивные классы в SRC/test/java . Это означает, что они не развернуты с Foo.jar к войне, созданной из веб -проекта. Я нашел эти инструкции на сайте Maven, но они, кажется, не работают для меня.

Код: Выделить всё

maven-jar-plugin


test-jar
test-compile

test-jar




При запуске MVN Install на foo-web , в цели foo Я получу две банки: foo-1.0.0-snapshot.jar и foo-1.0.0-snapshot-tests.jar . Они оба хорошо установлены в локальном репозитории Maven. < /P>

Ранее, зависимость foo-web < /code> выглядела следующим образом: < /p>

Код: Выделить всё

com.example
foo
1.0.0-SNAPSHOT

< /code>

и это запустило бы развертывание Foo-1.0.0-snapshot.jar < /code> в войне. Теперь я хочу также развернуть -tests < /code> jar, предпочтительно только для «локального» профиля.
local


com.example
foo
1.0.0-SNAPSHOT
test-jar



< /code>

Это приводит к развертыванию источника JAR с другим именем: com.example-foo.jar < /code> и не развертывает тестовую банку. Я также пытался использовать  
вместо в зависимости, но он все еще делает то же самое. Я пытался использовать вышеупомянутую зависимость за пределами профиля (вместе с другими), но она все еще ведет себя одинаково. < /P>

Если я добавляю < /code> к основной зависимости (без добавления другой зависимости), я развернутую тестовую банку (с тем же названием, что и выше), но источник, только что не развернуто. В документации есть тот факт, что область применения не указана для тестовой зависимости. Это работает только для тестирования с помощью области? Могу ли я каким -то образом развернуть тестовые классы по -разному. < /P>

Я знаю, что этот вопрос немного запутан, пожалуйста, дайте мне знать, если есть что -то, что я могу уточнить. Еще несколько способов, но это все еще не сработает. < /p>

Я добавил еще одно выполнение в Maven-jar-plugin в проекте Foo < /code> (зависимость, а не основной веб-проект), в котором я надеялся заставить Maven компилировать тестовые классы в одной банке, что и в основном и ссылаться на Big Bundlese по другому классификатору. Я не мог заставить его работать: < /p>

Код: Выделить всё

local-build
package

jar


batman
${basedir}/src/test/java 

**



jar был сгенерирован с помощью классификатора Batman , но я не смог найти способ заставить его включить тестовые классы в jar . классификатор/ Отношения с масштабами. Когда я попытался указать новую банку, которую я строю, кроме основной, я получил то же поведение, что и при попытке включить -тесты jar. Я проверил локальный репозиторий Maven, и обе банки из зависимого проекта устанавливаются нормально, поэтому проблема заключается в разрешении основного проекта. Из того, что я видел до сих пор, ответ - нет - я всегда получаю jar com.example -foo при указании одной и той же зависимости несколько раз с разными классификаторами.


Подробнее здесь: https://stackoverflow.com/questions/775 ... deployment

Вернуться в «JAVA»