Maven: jak pozbyć się artefaktu w pliku wynikowym (package)

0

Witam
Mam problem do rozwiązania:
chcĘ skutecznie pozbyć się artefaktu w pliku wynikowym, który
powstaje w na skutek polecenia mvn package ( projekt typu JavaEE EAR).
W grę nie wchodzi dodawanie <scope>provided</scope> - ponieważ to co
chce wyrzucić jest zależnością przechodnią oraz <optional>false</
optional> - bo jest to nieskuteczne - wystarczy że dodam do projektu
inny artefakt który zechce podłączyć tą zależność, musiałbym
kontrolować każdy nowopodłączony artefakt . Po kilku minutach
googlowania mam wrażenie że można to zrobić za pomocą pluginu maven-
assembly-plugin oraz pliku
"assembly descriptor", nie udało mi się znaleźć sensownego przykładu,
który by rozwiązywał mój problem.

0

Dodałem do projektu ear :

 
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <executions>
                    <execution>
                        <id>copy-dependencies</id>
                        <phase>package</phase>
                        <goals>
                            <goal>copy-dependencies</goal>
                        </goals>
                        <configuration>
                            <excludeArtifactIds>commons-logging</excludeArtifactIds>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

Niestety w katalogu ear/lib nadal występuje zależność, ale teraz w target powstał katalog
dependencies w którym ta zależność nie występuje, jak by to samo zrobić ze skutkiem dla katalogu ear/lib ?

0

Jeżeli jest to zależność pośrednia można jeszcze spróbować tego: http://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html

1 użytkowników online, w tym zalogowanych: 0, gości: 1