powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Сборка многомодульного maven проекта в состоянии близком к шизофрении
13 сообщений из 13, страница 1 из 1
Сборка многомодульного maven проекта в состоянии близком к шизофрении
    #38549516
NDAleksey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Народ, не сочтите за глупость, но у меня реально состояние на гране срыва, а это минимум не плодотворно для созидательного процесса.

Пересобирал уже несколько раз этим путем, все было отлично, а щас вообще не работает. Посмотрите код, может я где слона и не заметил... Есть главный модуль root, в него входят 3: ejb, web, ear (думаю стандартная схема).

root - pom.xml:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
<modelVersion>4.0.0</modelVersion>

<groupId>com.javaee.test</groupId>
<artifactId>root</artifactId>
<packaging>pom</packaging>
<version>1.0</version>

<modules>
	<module>ear</module>
	<module>ejb</module>
	<module>web</module>
</modules>



ejb - pom.xml:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
<parent>
	<artifactId>root</artifactId>
	<groupId>com.javaee.test</groupId>
	<version>1.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>

<artifactId>ejb</artifactId>
<packaging>jar</packaging>



web - pom.xml:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
<parent>
	<artifactId>root</artifactId>
	<groupId>com.javaee.test</groupId>
	<version>1.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>

<artifactId>web</artifactId>
<packaging>war</packaging>



ear - pom.xml:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
<parent>
	<artifactId>root</artifactId>
	<groupId>com.javaee.test</groupId>
	<version>1.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>

<artifactId>ear</artifactId>
<packaging>jar</packaging>

<dependencies>
	<dependency>
		<groupId>com.javaee.test</groupId>
		<artifactId>ejb</artifactId>
		<version>1.0</version>
		<type>jar</type>
	</dependency>
	<dependency>
		<groupId>com.javaee.test</groupId>
		<artifactId>web</artifactId>
		<version>1.0</version>
		<type>war</type>
	</dependency>
</dependencies>



Что я напутал, помогите!!!
...
Рейтинг: 0 / 0
Сборка многомодульного maven проекта в состоянии близком к шизофрении
    #38549531
NDAleksey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, самое главное, суть вопроса - почему ear-1.0.jar пустой? В плане, в нем нет ни jar-ника ни war-ника
...
Рейтинг: 0 / 0
Сборка многомодульного maven проекта в состоянии близком к шизофрении
    #38549628
пролетевший
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NDAleksey,

потому что вы собираете 'jar', классов никаких нет - вот он и пустой.
Должно быть
Код: xml
1.
<packaging>ejb</packaging>


и
Код: xml
1.
<packaging>ear</packaging>

,

ну и смотрите на maven-ejb-plugin, maven-ear-plugin для конфигурации.
...
Рейтинг: 0 / 0
Сборка многомодульного maven проекта в состоянии близком к шизофрении
    #38549661
0FD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NDAleksey,

Я бы поставил модуль ear последним в сборке.
...
Рейтинг: 0 / 0
Сборка многомодульного maven проекта в состоянии близком к шизофрении
    #38549826
NDAleksey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пролетевшийNDAleksey,

потому что вы собираете 'jar', классов никаких нет - вот он и пустой...



я не спорю, но еще раз повторюсь - я уже не раз собирал при таких pom-никах и все собиралось

0FD
NDAleksey,

Я бы поставил модуль ear последним в сборке.



А разве это играет роль? Я где-то читал, что при сборке проверяются сперва зависимости, а потом все собирается как матрешка.

Вот щас пришел на работу и решил проверить Ваши варианты. Заново собрал по своей схеме и решил запустить ЧРЕЗ IDEA сборку и вообще обалдел - в ear-ник попали библиотеки и jar-ники моих других проектов из локального репозитория моего maven. Вот часть лога сборки:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
[INFO] --- maven-ear-plugin:2.8:ear (default-ear) @ ear ---
[INFO] Copying artifact [war:com.bs.amg.test:web:1.0] to [web-1.0.war]
[INFO] Copying artifact [jar:com.bs.amg.test:ejb:1.0] to [ejb-1.0.jar]
[INFO] Copying artifact [jar:javax:javaee-api:6.0] to [javaee-api-6.0.jar]
[INFO] Copying artifact [jar:net.sf.supercsv:super-csv:2.1.0] to [super-csv-2.1.0.jar]
[INFO] Copying artifact [jar:com.google.gwt:gwt-user:2.5.1] to [gwt-user-2.5.1.jar]
[INFO] Copying artifact [jar:javax.validation:validation-api:1.0.0.GA] to [validation-api-1.0.0.GA.jar]
[INFO] Copying artifact [jar:javax.validation:validation-api:sources:1.0.0.GA] to [validation-api-1.0.0.GA-sources.jar]
[INFO] Copying artifact [jar:org.json:json:20090211] to [json-20090211.jar]
[INFO] Could not find manifest file: D:\DOCS\Projects\IDEA\JavaEE_Test\root\ear\target\ear-1.0\META-INF\MANIFEST.MF - Generating one
[INFO] Building jar: D:\DOCS\Projects\IDEA\JavaEE_Test\root\ear\target\ear-1.0.ear



Как такое возможно, просветите!
...
Рейтинг: 0 / 0
Сборка многомодульного maven проекта в состоянии близком к шизофрении
    #38549920
Alexey Tomin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NDAlekseyпролетевшийNDAleksey,
потому что вы собираете 'jar', классов никаких нет - вот он и пустой...

я не спорю, но еще раз повторюсь - я уже не раз собирал при таких pom-никах и все собиралось


Собиралось, и что? Пиши, как надо- и будет как надо.
Если пишешь неверно- то результат может быть любой, в т.ч. _вдруг_ верный.
...
Рейтинг: 0 / 0
Сборка многомодульного maven проекта в состоянии близком к шизофрении
    #38550104
NDAleksey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey TominСобиралось, и что? Пиши, как надо- и будет как надо.
Если пишешь неверно- то результат может быть любой, в т.ч. _вдруг_ верный.

Не хотел писать, т.к. сам разобрался - очистил репозиторий и перегенирировал архетипы, собрал и вуаля - в ear-нике все что нужно, даже если
Код: java
1.
<package>jar и war</package>

убрать, а из dependecy <type> в ear-модуле, то он все равно собирает в ear-ник jar-ники web и ejb модулей. Так вот, не хотел писать, но просто интересно, чем Вы обоснуете тот момент, что я неправильно пишу. Без обид, просто хочется получить ссылку на то, как правильно собирать multiply module maven project) То что результат непредсказуем и даже сейчас он "истинен" - это я и сам вижу)
...
Рейтинг: 0 / 0
Сборка многомодульного maven проекта в состоянии близком к шизофрении
    #38550191
0FD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NDAlekseyAlexey TominСобиралось, и что? Пиши, как надо- и будет как надо.
Если пишешь неверно- то результат может быть любой, в т.ч. _вдруг_ верный.

Не хотел писать, т.к. сам разобрался - очистил репозиторий и перегенирировал архетипы, собрал и вуаля - в ear-нике все что нужно, даже если
Код: java
1.
<package>jar и war</package>

убрать, а из dependecy <type> в ear-модуле, то он все равно собирает в ear-ник jar-ники web и ejb модулей. Так вот, не хотел писать, но просто интересно, чем Вы обоснуете тот момент, что я неправильно пишу. Без обид, просто хочется получить ссылку на то, как правильно собирать multiply module maven project) То что результат непредсказуем и даже сейчас он "истинен" - это я и сам вижу)

Тогда еще попробуй(ear модуль стоит первым? как я понял теперь собирается) удалить из репозитария твои артифакты от которых зависит проект и которые перечислены в ear-плагине(если перечислены) и запустить mvn package.
...
Рейтинг: 0 / 0
Сборка многомодульного maven проекта в состоянии близком к шизофрении
    #38550247
NDAleksey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
0FDТогда еще попробуй(ear модуль стоит первым? как я понял теперь собирается) удалить из репозитария твои артифакты от которых зависит проект и которые перечислены в ear-плагине(если перечислены) и запустить mvn package.

да я их постоянно удалял - весь пакет со всеми модулями из репозитория локального. пришлось полностью обновлять его. кстати, вопрос такой (можно не отвечать) - EJB входит в JavaEE. если я утверждаю, что не знаю JavaEE, это несет в себе подтекстом, что я не знаком с EJB (не знаю, формальная тут логика или нет = ) )
...
Рейтинг: 0 / 0
Сборка многомодульного maven проекта в состоянии близком к шизофрении
    #38551017
Alexey Tomin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NDAlekseyТак вот, не хотел писать, но просто интересно, чем Вы обоснуете тот момент, что я неправильно пишу. Без обид, просто хочется получить ссылку на то, как правильно собирать multiply module maven project) То что результат непредсказуем и даже сейчас он "истинен" - это я и сам вижу)

Есть правила. Они просты, понятны и работают. Их надо соблюдать.
Есть возможность делать не так. Что при этом будет- вопрос сложный, на который ни Вы, ни я не ответим.
Вам надо получать временами проблемы на ровном месте?

Нарушать правила можно только тогда, когда есть полное понимание происходящего.

Вот весной консультировал- выяснилось, что некий проект работает в jboss под виндой, но не стартует под linux.
Человек тоже писал всё как попало, по принципу "да всё ж работает". И получил кучу левых зависимостей, копий jar'ок от hibernate в ear'у и т.п.
Под виндой класслоадер как-то справлялся, а под linux- не осилил. Да, в 5.1 есть забавные баги в класслоадере :)
Превращение этого бардака в рабочий ear заняло у нас двоих несколько дней. А всё потому, что автору лень было когда-то потратить пару часов и сделать всё по-правилам. А проект нужно было сдавать "вчера".

Вам такое надо?
...
Рейтинг: 0 / 0
Сборка многомодульного maven проекта в состоянии близком к шизофрении
    #38551110
Лагман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вгуглите про использование слова SNAPSHOT в версии артефактов.
...
Рейтинг: 0 / 0
Сборка многомодульного maven проекта в состоянии близком к шизофрении
    #38551469
NDAleksey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey TominВам такое надо?

Нет) Но просто, так как я человек не шибко соображающий, спросил на одном форуме, как создать такое проект, и один бородатый-уважаемый человек мне дал то, что Вы видели. Я принял на веру, ибо мозгов не хватило погуглить дальше. Хотя, если честно, я облазил весь мавен и хотел найти то, что посоветовали выше - не нашел. Даже на сонотайпе искал. Допускаю, что не заметил, но результата не нашел... Поэтому и хотел, чтобы мне дали ссылку. Дело не в лени) Я уже на этом форуме столько народа замучил своими вопросами - реально хочу разобраться, прекрасно понимая истинность ваших слов.

ЛагманВгуглите про использование слова SNAPSHOT в версии артефактов.

авторFirst what do I mean by SNAPSHOT? SNAPSHOT is a special version in maven that indicates the latest code; typically TRUNK or HEAD in your source control. With this version, maven will automatically grab the latest SNAPSHOT every time you build. On the other hand, when you are using 2.0, once maven has downloaded this artifact, it never tries to get a new 2.0.

Why should you use SNAPSHOT? You should use SNAPSHOT for rapidly moving code where bug fixes and enhancements are coming fast. Another reason is you should never require users of your project to checkout and build your code.


Вы это имели в виду?
...
Рейтинг: 0 / 0
Сборка многомодульного maven проекта в состоянии близком к шизофрении
    #38551592
Лагман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NDAleksey,

да
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Сборка многомодульного maven проекта в состоянии близком к шизофрении
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]