Spring Boot项目有哪几种方式运行呢?

戚薇 SpringBoot 发布时间:2023-05-11 16:10:39 阅读数:17567 1
下文笔者讲述SpringBoot项目的运行方法分享,如下所示
方式1:
   直接java -jar的方式运行

方式2:
   解压**.jar包
      查看启动类 的位置
   然后使用
   java org.springframework.boot.loader.JarLauncher

方式3:
    自定义启动类的位置

方式4:
    使用maven插件
	  实现SpringBoot项目的启动
例:

java -jar直接启动Springboot

java -jar 文件名称.jar

解压jar包运行

将文件名称.jar解压后


BOOT-INF/ 存放class文件和依赖包
META-INF/ maven信息、程序启动入口和ClassPath信息
org/ Spring Boot提供的加载器、和启动类

查看META-INF/MANIFEST.MF, 得知启动类:
Manifest-Version: 1.0
Implementation-Title: application
Implementation-Version: 0.0.1
Built-By: Camus
Implementation-Vendor-Id: ltd.camus
Spring-Boot-Version: 2.1.6.RELEASE
Main-Class: org.springframework.boot.loader.JarLauncher
Start-Class: ltd.camus.TileApiApplication
Spring-Boot-Classes: BOOT-INF/classes/
Spring-Boot-Lib: BOOT-INF/lib/
Created-By: Apache Maven 3.3.9
Build-Jdk: 1.8.0_111

-----运行------
java org.springframework.boot.loader.JarLauncher

自定义运行

复制BOOT-INF/lib至BOOT-INF/classes中
 
  编写脚本命令:
java -classpath .;.\lib\* ltd.camus.TileApiApplication
# TileApiApplication是我们自己写的Spring Boot入口类
# lib文件夹后面记得加*, 否则无法加载jar包

使用插件

配置中: 只需修改启动类配置即可

<plugin> 
    <groupId>org.codehaus.mojo</groupId>  
    <artifactId>appassembler-maven-plugin</artifactId>  
    <version>2.0.0</version>  
    <executions> 
      <execution> 
        <goals> 
          <goal>assemble</goal> 
        </goals> 
      </execution> 
    </executions>  
    <configuration> 
      <!-- 生成linux, windows两种平台的执行脚本 -->  
      <platforms> 
        <platform>windows</platform>  
        <platform>unix</platform> 
      </platforms>  
      <!-- 根目录 -->  
      <assembleDirectory>${project.build.directory}/${project.artifactId}</assembleDirectory>  
      <!-- 打包的jar,以及maven依赖的jar放到这个目录里面 -->  
      <repositoryName>lib</repositoryName>  
      <!-- 可执行脚本的目录 -->  
      <binFolder>bin</binFolder>  
      <!-- 配置文件的目标目录 -->  
      <configurationDirectory>conf</configurationDirectory>  
      <!-- 拷贝配置文件到上面的目录中 -->  
      <copyConfigurationDirectory>true</copyConfigurationDirectory>  
      <!-- 从哪里拷贝配置文件 (默认src/main/config) -->  
      <configurationSourceDirectory>src/main/resources</configurationSourceDirectory>  
      <includeConfigurationDirectoryInClasspath>true</includeConfigurationDirectoryInClasspath>  
      <!-- lib目录中jar的存放规则,默认是${groupId}/${artifactId}的目录格式,flat表示直接把jar放到lib目录 -->  
      <repositoryLayout>flat</repositoryLayout>  
      <useWildcardClassPath>true</useWildcardClassPath>  
      <encoding>UTF-8</encoding>  
      <logsDirectory>logs</logsDirectory>  
      <tempDirectory>tmp</tempDirectory>  
      <programs> 
        <program> 
          <id>${project.artifactId}</id>  
          <!-- 启动类 -->  
          <mainClass>gutsy.lin.Main</mainClass>  
          <jvmSettings> 
            <extraArguments> 
              <extraArgument>-server</extraArgument>  
              <extraArgument>-Xmx1G</extraArgument>  
              <extraArgument>-Xms1G</extraArgument>  
              <extraArgument>-Dapplication.version=${project.version}</extraArgument> 
            </extraArguments> 
          </jvmSettings> 
        </program> 
      </programs> 
    </configuration> 
  </plugin>  

使用以上插件,将会出现以下目录

bin目录:
   放置运行脚本,有Windows和Linux
conf目录:
   放置配置文件和静态资源
lib目录:
   放置我们开发的包和依赖包

注意事项:
   此插件不能与spring-boot-maven-plugin共同使用
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaFramework/SpringBoot/202305/6410.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者