maven-war-plugin: jar дважды развертывается в нексусе, когда для attachClasses установлено значение true

У меня очень похожая проблема, описанная в maven jar, развернутый дважды в военном модуле, для attachClasses установлено значение true, за исключением того, что моя настройка отличается, и то, что, похоже, помогло, на этот раз не работает для меня.

Вот мои настройки:

  • один мультимодуль с 2 проектами, A и B, где B зависит от A
  • поскольку A в первую очередь упаковывает WAR, я настроил war-plugin, установив для attachClasses значение true, чтобы был создан файл class.jar, который позволяет B зависеть от A (подробнее об этом)
             <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>3.3.1</version>
                <configuration>
                    <archive>
                        <manifest>
                            <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                            <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
                        </manifest>
                       <manifestEntries><Build-Time>${maven.build.timestamp}</Build-Time></manifestEntries>-->
                    </archive>
                    <attachClasses>true</attachClasses>
                </configuration>
            </plugin>

Все работает нормально, за исключением того, что когда Jenkins пытается развернуть на Nexus, он дважды пытается развернуть файл class.jar, что приводит к сбою.

Кто-нибудь знает?


person Julien Berthoud    schedule 21.12.2020    source источник


Ответы (1)


Архитектура многомодульного проекта неоптимальна.

Извлеките классы, которые нужны как A, так и B, в новый модуль C, и пусть A и B зависят от C. Избегайте использования побочных артефактов в качестве зависимостей.

person J Fabian Meier    schedule 21.12.2020
comment
Это устаревший проект, и я, к сожалению, не могу изменить архитектуру, поэтому я ищу обходной путь. - person Julien Berthoud; 21.12.2020
comment
Если вы не можете измениться, вы не можете решить проблему... вы должны что-то изменить. - person khmarbaise; 21.12.2020