Maven打包可運行jar包插件(maven-jar-plugin、maven-dependency-plugin)

可運行jar包插件,可以使用maven-assembly-plugin實現自定義打包,也可以使用maven-jar-pluginmaven-dependency-pluginmaven-assembly-plugin實際上也是使用jardependency,只是assembly可以自定義打包的內容。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.3.1</version>
    <configuration>
        <archive>
        	<!-- 如果需要在生成的META-INF/MANIFEST.MF中加入額外的配置,可以使用這個標籤 -->
            <manifestFile>src/main/resources/META-INF/MANIFEST.MF</manifestFile>
            <manifest>
                <mainClass>com.p7.demo.Main</mainClass>
                <addClasspath>true</addClasspath>
                <classpathPrefix>lib/</classpathPrefix>
            </manifest>
        </archive>
    </configuration>
</plugin>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <version>2.8</version>
    <executions>
        <execution>
            <id>copy</id>
            <phase>package</phase>
            <goals>
                <goal>copy-dependencies</goal>
            </goals>
            <configuration>
                <outputDirectory>
                    ${project.build.directory}/lib
                </outputDirectory>
            </configuration>
        </execution>
    </executions>
</plugin>

打包結果:
在這裏插入圖片描述
上面生成lib包,在agent.jar中的META-INF/MANIFEST.MF中有指定classpath下有哪些依賴。如果使用maven-assembly-plugin進行打包,可以自定義打包的內容,如下,將agent.jar也打入lib包下,並且修改META-INF/MANIFEST.MF依賴的路徑
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章