使用Maven打包特定的依赖罐

时间:2012-05-31 17:59:28

标签: maven jar pom.xml

我的maven项目有几个依赖的jar,但是当我创建一个我的项目的jar时,我想包含这些依赖项的一个子集。有没有办法做到这一点?目前,我正在使用下面的pom.xml(来自问题How can I create an executable JAR with dependencies using Maven?),但它正在用我的项目打包每个依赖项。

<build>
<plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <configuration>
            <archive>
                <manifest>
                    <addClasspath>true</addClasspath>
                </manifest>
            </archive>
        </configuration>
    </plugin>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-assembly-plugin</artifactId>
        <configuration>
            <descriptorRefs>
                <descriptorRef>jar-with-dependencies</descriptorRef>
            </descriptorRefs>
        </configuration>
        <executions>
            <execution>
                <phase>package</phase>
                <goals>
                    <goal>single</goal>
                </goals>
            </execution>
        </executions>
    </plugin>
</plugins>
</build>

1 个答案:

答案 0 :(得分:2)

尝试:

<dependencySets>
    <dependencySet>
      ....
      <excludes>
        <exclude>commons-lang:commons-lang</exclude>
        <exclude>log4j:log4j</exclude>
      </excludes>
    </dependencySet>
    ....
  </dependencySets>

有关详细信息,请参阅Including and Excluding Artifacts