kackb00n: Maven Konfiguration copy-dependencies verschiedene Verzeichnisse

Hi, ich arbeite mich gerade mit Maven für ein größeres Projekt ein. Dabei müssen verschiedene Dependencies dann in verschiedenen Verzeichnissen landen.

Da das Projekt aus vielen Unterprojekten besteht, habe ich diesbezüglich in der "Haupt-POM" folgende Konfiguration:

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-dependency-plugin</artifactId>
        <version>3.0.2</version>
        <executions>
          <execution>
            <id>copy-libs</id>
            <phase>package</phase>
            <goals>
              <goal>copy-dependencies</goal>
            </goals>
            <configuration>
              <excludeTransitive>true</excludeTransitive>
              <outputDirectory>${project.install.dir}/libs</outputDirectory>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>

Für das Unterprojekt mal hier der relevante Teil:

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-dependency-plugin</artifactId>
        <executions>
          <execution>
            <id>copy-libs</id>
            <phase>package</phase>
            <configuration>
              <excludeArtifactIds>org.apache.felix.main</excludeArtifactIds>
            </configuration>
          </execution>
          <execution>
            <id>copy-felix</id>
            <phase>package</phase>
            <configuration>
              <artifactItems>
                <artifactItem>
                  <groupId>org.apache.felix</groupId>
                  <artifactId>org.apache.felix.main</artifactId>
                  <version>5.6.10</version>
                  <outputDirectory>${project.install.dir}/bin</outputDirectory>
                </artifactItem>
              </artifactItems>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>

Damit generiert sich in der effektiven POM:

  <build>
    <plugins>
      <plugin>
        <artifactId>maven-dependency-plugin</artifactId>
        <version>3.0.2</version>
        <executions>
          <execution>
            <id>copy-libs</id>
            <phase>package</phase>
            <goals>
              <goal>copy-dependencies</goal>
            </goals>
            <configuration>
              <excludeArtifactIds>org.apache.felix.main</excludeArtifactIds>
              <excludeTransitive>true</excludeTransitive>
              <outputDirectory>../env/libs</outputDirectory>
            </configuration>
          </execution>
          <execution>
            <id>copy-felix</id>
            <phase>package</phase>
            <configuration>
              <artifactItems>
                <artifactItem>
                  <groupId>org.apache.felix</groupId>
                  <artifactId>org.apache.felix.main</artifactId>
                  <version>5.6.10</version>
                  <outputDirectory>../env/bin</outputDirectory>
                </artifactItem>
              </artifactItems>
            </configuration>
          </execution>
        </executions>
      </plugin>
	  </plugins>
  </build>

Beim Erzeugen werden dann die Dependencies richtig nach ../env/libs kopiert, allerdings bleibt ../env/bin komplett leer.

Was mache ich falsch?

MfG