如何构建Java项目(包括所有依赖项,如Jars)

时间:2019-07-05 17:31:03

标签: java maven maven-dependency-plugin

我正在构建Java项目,并使用maven-dependency-plugin能够将所有依赖项复制为jar到目标文件夹下的lib文件夹中。

通过使用maven-jar-plugin,我可以使用类/资源和清单文件创建jar。

但是我的愿望输出是my.jar应该包含依赖项jar。我发现了几个maven-shade-plugin, onejar-maven-plugin and maven-assembly-plugin这样的插件。

但是所有这些都提供了爆炸性的依赖关系jar,而我实际上需要jar依赖关系。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <executions>
        <execution>
            <id>copy-dependencies</id>
            <phase>prepare-package</phase>
            <goals>
                <goal>copy-dependencies</goal>
            </goals>
            <configuration>
                <outputDirectory>${project.build.directory}/lib</outputDirectory>
                <overWriteReleases>false</overWriteReleases>
                <overWriteSnapshots>false</overWriteSnapshots>
                <overWriteIfNewer>true</overWriteIfNewer>
            </configuration>
        </execution>
    </executions>
</plugin>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <configuration>
        <archive>
            <manifest>
                <addClasspath>true</addClasspath>
                <classpathPrefix>lib/</classpathPrefix>
                <mainClass>com.my.app</mainClass>
            </manifest>
        </archive>
    </configuration>
</plugin>

0 个答案:

没有答案