使用maven打包可执行的jar

本文介绍如何使用Maven插件构建包含所有依赖项及配置文件的可执行Jar包,并详细说明了maven-jar-plugin、maven-dependency-plugin及maven-resources-plugin的配置方法。

使用maven打包可执行的jar

要求实现如下目录结构: 

bin (用于存放执行的脚本) lib (用于存放依赖的jar包) conf (用于存放相关的配置文件) logs (用于存放log日志)

使用到的maven插件如下:

1.maven-jar-plugin
2.maven-dependency-plugin
3.maven-resources-plugin

maven-resources-plugin 主要处理将resources目录下的.bat .sh等文件写入到bin目录下以及将resources目录下的.properties文件及.sql文件写入到conf 目录中去.

maven-dependency-plugin 主要处理将依赖的包写入到lib目录中去.

maven-jar-plugin 主要处理将.class文件及xml文件打包到jar,生成manifest及将conf目录追加到classpath

 

maven-jar-plugin 的主要配置如下:

<!-- 打包插件 -->
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>3.0.2</version>
    <configuration>
        <archive>
            <!--<index>true</index>-->
            <!-- 生成MANIFEST.MF的设置 -->
            <manifest>
                <!-- 为依赖包添加路径, 这些路径会写在MANIFEST文件的Class-Path下 -->
                <addClasspath>true</addClasspath>
                <classpathPrefix>lib/</classpathPrefix>
                <!-- jar启动入口类-->
                <mainClass>com.hyc.ops.mq.VouchersOnRegister</mainClass>                
            </manifest>
            <manifestEntries>
                <!-- 在Class-Path下添加配置文件的路径 -->
                <Class-Path>conf/</Class-Path>
                <Implementation-Build>${project.parent.version}</Implementation-Build>
            </manifestEntries>
        </archive>
        <includes>
            <include>**/*.class</include>
            <include>**/*.xml</include>
        </includes>
    </configuration>
</plugin>

在使用时总是提示找不到相关的schema , 网上没有相关问题解答,后经测试发现将<index>true</index>注掉后无此问题,至于不会生成INDEX.LIST文件,

 

转载于:https://my.oschina.net/doz/blog/743166

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值