需要时SpringBoot项目

通过创建可以在生产环境中运行的完全独立的可执行jar文件来结束示例。可执行jar(有时称为“胖jar”)是包含您的已编译类以及代码需要运行的所有jar依赖项的归档文件。

可执行jar和Java

Java没有提供加载嵌套jar文件(jar中本身包含的jar文件)的标准方法。如果您要分发独立的应用程序,则可能会出现问题。

为了解决这个问题,许多开发人员使用“超级”罐子。uber jar将来自应用程序所有依赖项的所有类打包到单个存档中。这种方法的问题在于,很难查看应用程序中包含哪些库。如果在多个jar中使用相同的文件名(但具有不同的内容),也可能会产生问题。

要创建可执行jar,我们需要将添加spring-boot-maven-pluginpom.xml。为此,请在该dependencies部分下方插入以下行:

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>

保存pom.xml并从命令行运行mvn package

如果查看target目录,则应该看到myproject-0.0.1-SNAPSHOT.jar。该文件的大小应为10 MB左右。如果您想窥视内部,可以使用jar tvf,如下所示:

您还应该myproject-0.0.1-SNAPSHOT.jar.originaltarget目录中看到一个更小的文件。这是Maven在Spring Boot重新打包之前创建的原始jar文件。

要运行该应用程序,请使用以下java -jar命令:

$ java -jar target / myproject-0.0.1-SNAPSHOT.jar

要退出该应用程序,请按ctrl-c

SpringBoot打包成可执行的Jar文件的更多相关文章

  1. 如何将maven项目打包成可执行的jar

    如何将maven项目打包成可执行的jar 分类: maven2010-12-17 10:18 10411人阅读 评论(2) 收藏 举报 jarmavenassemblyjava 方法一:将项目及所依赖 ...

  2. 将Java应用程序打包成可执行的Jar包

    可以将多个class文件打包为jar包,在指定程序入口点情况下,可以用 java –jar jar包名称 的方式调用jar包内主类的main函数. 程序源代码如下: //Math.java publi ...

  3. 构建Springboot项目、实现简单的输出功能、将项目打包成可以执行的JAR包(详细图解过程)

    1.构建SpringBoot项目 大致流程 1.新建工程 2.选择环境配置.jdk版本 3.选择 依赖(可省略.后续要手动在pom文件写) 4.项目名 1.1 图解建立过程 1.2 项目结构 友情提示 ...

  4. maven项目打包成可执行的jar

    编写功能类: package com.hpay.FileToZkUtil; import java.io.File; import java.io.FileInputStream; import ja ...

  5. 在IDEA中如何将Spring boot项目打包成可执行的jar包并发布到linux服务

    这两年微服务很流行,这里简单介绍一下如何将自己使用idea写的微服务打包成一个可执行的jar包,并发布到linux服务器的步骤.因为spring boot有内置的tomcat所以一般使用内置的tomc ...

  6. java打包成可执行的jar或者exe的详细步骤

    Java程序完成以后,对于Windows操作系统,习惯总是想双击某个exe文件就可以直接运行程序,现我将一步一步的实现该过程.最终结果是:不用安装JRE环境,不用安装数据库,直接双击一个exe文件,就 ...

  7. 将SeqReader打包成可执行的jar包

    SeqReader是我定义的一个读取SequenceFile文件,并将部分(key,value)打印到控制台窗口的类,其完整代码如下: /** * Created with IntelliJ IDEA ...

  8. hadoop-maven项目打包成可执行的jar

    环境: cdh5.1.0 jdk1.7 <build> <plugins> <!--指定JDK为1.7 --> <plugin> <groupId ...

  9. Maven项目打包成可执行Jar文件

    在使用Maven完成项目以后,如果需要打包成可执行的Jar文件,我们通过eclipse的导出很麻烦,还得指定入口文件的位置,还得说明依赖的jar包,既然都使用Maven了,很重要的一个目的就是让这些繁 ...

随机推荐

  1. 三种移除list中的元素(可靠)

    /** * 直接使用foreach方法移除list中的元素会抛异常 * Exception in thread "main" java.util.ConcurrentModific ...

  2. ensp上防火墙的实现

    使用ensp模拟器中的防火墙(USG6000V)配置NAT(网页版)一.NAT介绍NAT(Network Address Translation,网络地址转换):简单来说就是将内部私有地址转换成公网地 ...

  3. 服务器CPU很高-怎么办(Windbg使用坑点)

    最近,碰到了一个线上CPU服务器很高的问题,并且也相当紧急,接到这个任务后,我便想到C#性能分析利器,Windbg. 终于在折腾半天之后,找出了问题,成功解决,这里就和大家分享一下碰到的问题. 问题1 ...

  4. Python推导式

    Python推导式 推导式:是Python中提供的一个非常方便的功能,可以通过一行代码实现创建 list.dict.tuple.set的同时初始化一些值. 1.列表推到式 # -*- coding: ...

  5. Dubbo服务如何优雅的校验参数

    一.背景 服务端在向外提供接口服务时,不管是对前端提供HTTP接口,还是面向内部其他服务端提供的RPC接口,常常会面对这样一个问题,就是如何优雅的解决各种接口参数校验问题? 早期大家在做面向前端提供的 ...

  6. JZ-048-不用加减乘除做加法

    不用加减乘除做加法 题目描述 写一个函数,求两个整数之和,要求在函数体内不得使用+.-.*./四则运算符号. 题目链接: 不用加减乘除做加法 代码 /** * 标题:不用加减乘除做加法 * 题目描述 ...

  7. 一比一还原axios源码(一)—— 发起第一个请求

    上一篇文章,我们简单介绍了XMLHttpRequest及其他可以发起AJAX请求的API,那部分大家有兴趣可以自己去扩展学习.另外,简单介绍了怎么去读以及我会怎么写这个系列的文章,那么下面就开始真正的 ...

  8. Forbidden You don't have permission to access this resource. 解决办法!

    这两天在使用hmailserver+roundcubemail 搭建邮箱时遇到的一些坑和大家分享一下,避免少踩坑. 关用httpd.conf及httpd-vhosts.conf配置我贴出来供大家参考. ...

  9. Unknown column ‘avatar_url‘ in ‘field list‘

    报错: Unknown column 'avatar_url' in 'field list' 解决: 查看mysql数据库中字段名前面是否有空格或则换行

  10. 编译OneAPI(支持Nvidia显卡)

    开始使用DPC++ 官方安装教程 预备条件 请确保当前开发环境满足如下条件: git cmake版本需要满足3.14及以上. python版本3.6以上的python. nijia版本1.8及以上(使 ...