springboot 启动jar正确方式

首先需要pom.xml配置一个插件:


IDEA 在右侧执行顶上m图片按钮 在command Line  中执行clean package命令  执行打包注意  打完jar包后最好解压jar查看一下META-INF文件下的MANIFEST.MF文件内容如下

Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Built-By: zhangfengshi
Start-Class: com.xxxx.ServletInitializer:  [属性就代表了Spring Boot程序的入口类,这个类中应该有一个main方法]
Spring-Boot-Classes: BOOT-INF/classes/
Spring-Boot-Lib: BOOT-INF/lib/
Spring-Boot-Version: 2.1.0.RELEASE
Created-By: Apache Maven 3.3.9
Build-Jdk: 1.8.0_171
Main-Class: org.springframework.boot.loader.JarLauncher[代表了Spring Boot中启动jar包的程序]

Main-Class代表了Spring Boot中启动jar包的程序
Start-Class属性就代表了Spring Boot程序的入口类,这个类中应该有一个main方法
Spring-Boot-Classes代表了类的路径,所有编译后的class文件,以及配置文件,都存储在该路径下
Spring-Boot-Lib表示依赖的jar包存储的位置
这些值都是SpringBoot打包插件会默认生成的,如果没有这些属性,SpringBoot程序自然不能运行,就会报错:jar中没有主清单属性,也就是说没有按照SpringBoot的要求,生成这些必须的属性

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

        <mainClass>com.startdt.bodyserver.web.ServletInitializer</mainClass>不配置这个会出现找不到执行主类

    </configuration>    <executions>        <execution>            <goals>                <goal>repackage</goal>这里需要重新打包 不然会出现利用上次package结果            </goals>        </execution>    </executions></plugin>

然后在控制台执行

nohup  java -jar xx.jar &启动

原文地址:https://www.cnblogs.com/zhangfengshi/p/10725108.html

时间: 2024-11-14 13:07:50

springboot 启动jar正确方式的相关文章

启动jar的方式

1.windows server 2008 start "srvRegistry" java -jar srvRegistry-1.0-SNAPSHOT.jar --spring.profiles.active=test start "apiGetway" java -jar apiGetway-1.0-SNAPSHOT.jar --spring.profiles.active=test 2.linux #!/bin/shecho "set up srvR

以jar包方式启动

嗨,大家好~ ,在工作中,一个项目要部署到服务器上,我自己在工作中常见的部署tomcat和jar包方式部署的两种方式.(其他的有待挖掘) 啊啊啊,公司正在做一个新的平台,所以最近疯狂在服务器上部署项目~ 今天介绍的是一个以vertx体系写的maven项目,将项目以jar包的方式启动 部署到服务器上面 部署步骤: 1.首先要在服务器上将项目所需要的环境安装好,例如 jdk, redis,mqtt, zookpper, vertx 等等等.... 2.回到项目上,需要改动  pom.xml   和 

SpringBoot不通过私服方式引入第三方jar包

SpringBoot不通过私服方式引入第三方jar包 比如打包的时候想引入lib文件夹下的第三方jar包, pom.xml配置如下: <dependencies>标签里面引入第三方jar包的依赖 pom.basedir指的是pom文件所在的目录, systemPath指的是第三方jar包所在路径. <dependency> <groupId>com.abc</groupId> <artifactId>cryptokit</artifactI

Spring Boot 以 jar 包方式运行在后台

spring-boot jar 包方式启动: 首先,为了防止和常用的 Tomcat 8080 端口冲突,将 Spring-boot 项目的端口号设置为 9090. 具体方法:在 application.properties 文件里写 server.port=9090. 使用 maven 命令:clean package 打包. 放到服务器上一个合适的位置. 使用 Java -jar spring-boot01-1.0-SNAPSHOT.jar 命令,启动 jar 包. 然后,在浏览器输入 htt

springboot 启动接收参数

springboot 启动可以通过 java -jar xxx.jar 参数 来传递启动参数到程序中.通过args[] 来传递参数非常不优雅,不同系统会有奇异,windows系统会在参数里面自己写入一行标识,Linux系统就不会,传几个参数就会按照数组位数排列. 下面介绍一种优雅的方式,就是借助于application.properties里面的属性,通过@Value将属性注入进来. 代码如下:br/>@Componentpublic class ScriptPath { @Value("

SpringBoot(三):springboot启动参数

springboot默认启动入口函数是支持接收参数,并且在整个应用程序内部也可以获取到这些参数,并且如果传递的参数是一些内部定义的参数将会被映射到springboot内部配置项,从而达到配置效果. springboot入口参数传递与获取: 方式1)springboot 配置项目启动传递参数: a)在idea导航Run->Edit Configuration... b)Edit Configuration...下设置启动参数: c)修改SpringBoot启动入口函数: package app;

SpringBoot 启动流程

SpringBoot 启动流程 加载 resources/META-INF/spring.factories 中配置的 ApplicationContextInitializer 和 ApplicationListener. /** * 加载在框架内部使用的各种通用工厂 bean. * spring.factories 文件必须满足 Properties 文件格式,属性的 key 是接口或抽象类的全限定类名, * value 是一组由逗号分隔的实现类全类名. */ public final cl

SpringBoot启动过程原理

最近这两年springboot突然火起来了,那么我们就来看看springboot的运行原理. 一.springboot的三种启动方式: 1.运行带有main方法的2.通过命令 Java -jar命令3.通过spring-boot-plugin的方式 二.springboot 启动时执行方法,有两种方式 第一种方式是用启动时的main方法加载静态方法. 另一种是用初始化注解@postconstruct 执行.(注意点必须void并且参数). 注意点:[1.@PostConstruct会先被执行,静

SpringBoot启动机制(starter机制)核心原理详解

作者:MyBug 一.前言 使用过springboot的同学应该已经知道,springboot通过默认配置了很多框架的使用方式帮我们大大简化了项目初始搭建以及开发过程.本文的目的就是一步步分析springboot的启动过程,这次主要是分析springboot特性自动装配.那么首先带领大家回顾一下以往我们的web项目是如何搭建的,通常我们要搭建一个基于Spring的Web应用,我们需要做以下一些工作:pom文件中引入相关jar包,包括spring.springmvc.redis.mybaits.l