`

将java程序打包为一个可执行jar包的另一种方式

阅读更多

针对pom.xml修改

第一步,指定打包为jar包

<packaging>jar</packaging>

 第二步,build节点下使用maven-assembly-plugin

 <plugin>
                <artifactId>maven-assembly-plugin</artifactId>
                <version>2.6</version>
                <executions>  <!--执行器 mvn assembly:assembly-->
                    <execution>
                        <id>xxx</id><!--名字任意 -->
                        <phase>package</phase><!-- 绑定到package生命周期阶段上 -->
                        <goals>
                            <goal>single</goal><!-- 只运行一次 -->
                        </goals>
                        <configuration>
                            <descriptors> <!--描述文件路径-->
                                <descriptor>src/main/resources/zip.xml</descriptor>
                            </descriptors>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

 第三步,在第二步指定的路径下,新建文件,zip.xml

<assembly
        xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd">
    <id>release</id>
    <formats>
        <format>tar</format>  <!-- 打包的类型,可以是tar或者zip等类型-->
    </formats>
    <fileSets>
        <fileSet>
            <directory>${project.basedir}\src\main\resources</directory>
            <!-- 过滤 -->
            <excludes>
                <exclude>*.xml</exclude>
            </excludes>
            <outputDirectory>\</outputDirectory>
        </fileSet>
    </fileSets>

    <dependencySets>
        <dependencySet>
            <useProjectArtifact>true</useProjectArtifact>
            <outputDirectory>lib</outputDirectory><!-- 将scope为runtime的依赖包打包到lib目录下。 -->
            <scope>runtime</scope>
        </dependencySet>
    </dependencySets>
</assembly>

 第四步:mvn clean package

第五部:解压tar文件,执行java -jar xx

分享到:
评论

相关推荐

    超详细介绍idea中java程序打jar包的两种方式

    主要介绍了超详细介绍idea中java程序打jar包的两种方式一种是可直接执行的runnable jar文件,另一种是包含多个主类,运行时需要指定主类全类名的jar包,感兴趣的可以了解一下

    Java核心技术 卷Ⅰ:基础知识 【中文】(第八版)

    然后,通过编译和运行三个典 型的Java程序(一个控制台应用、一个图形应用、一个applet),指导读者使用简易的JDK、可 启用Java的文本编辑器以及一个Java IDE。 第3章开始讨论Java 语言。这一章涉及的基础知识有变量...

    超爽的自学课件(java)

    以及用switch实现另一种形式的选择。尽管这些与C和C++中见到的有一定的共通性,但多少存在一些区别。除此以外,所有示例都是完整的Java示例,能使大家很快地熟悉Java的外观。 &lt;br&gt;(4) 第4章:初始化和清除 本...

    《Java-web程序设计》教案.doc

    从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器 进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数 台服务器,Java显示了一个巨大的生命力。 多样化和功能强大的开发...

    新版Android开发教程.rar

    Android 是一个专门针对移动设备的软件集,它包括一个操作系统,中间件和一些重要的应用程序。 Beta 版 的 Android SDK 提供了在 Android 平台上使用 JaVa 语言进行 Android 应用开发必须的工具和 API 接口。 特性 ...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例014 使当前项目依赖另一个项目 21 1.3 界面设计器 22 实例015 安装界面设计器 22 实例016 设计Windows系统的运行对话框 界面 23 实例017 设计计算器程序界面 26 实例018 设计关于进销存管理系统的界面 27 第2章 ...

    Maven权威指南 很精典的学习教程,比ANT更好用

    Maven是Ant的另一种选择么? 1.7. 比较Maven和Ant 1.8. 总结 2. 安装和运行Maven 2.1. 验证你的Java安装 2.2. 下载Maven 2.3. 安装Maven 2.3.1. 在Mac OSX上安装Maven 2.3.2. 在Microsoft Windows上安装...

    luca1:一种新的脚本语言的Tree-walk解释器

    LUCA1去做更改Maven构建,以使用格式正确的名称打包到jar中,创建充当可执行文件(或者可能是C可执行文件)的shell脚本有关此注释,请参见parser_refactor分支。 加整数类型可能需要创建一个Number超类,然后在运行...

    网管教程 从入门到精通软件篇.txt

    INT:中间代码,当一个源程序经过语法检查后编译产生一个可执行代码 IOF:Findit文档 IQY:Microsoft Internet查询文件 ISO:根据ISD 9660有关CD-ROM文件系统标准列出CD-ROM上的文件 ISP:X-Internet签字文件 ...

    Maven2 的新特性.7z

    除此之外,"简化工作,使用业界公认的最佳实践"也是是 Maven2 的另一大主题,其他的新特性无处不在体现 Maven2 为简化工作而做出的努力。 2. 更少的配置文件 Maven1 和 Maven2 主要配置文件的对比: • Maven1:...

    Java学习笔记-个人整理的

    {1.2}数字表达方式}{17}{section.1.2} {1.3}补码}{19}{section.1.3} {1.3.1}总结}{23}{subsection.1.3.1} {1.4}数据类型}{23}{section.1.4} {1.4.1}整数与浮点数}{23}{subsection.1.4.1} {1.4.1.1}浮点数原理}...

Global site tag (gtag.js) - Google Analytics