天天看點

SpringBoot2.0 基礎案例(17):自定義啟動頁,項目打包和指定運作環境

本文源碼:GitHub·點這裡 || GitEE·點這裡

一、打包簡介

springboot的打包方式有很多種。可以打war包,可以打jar包,可以使用jekins進行打包部署的。不推薦用war包,SpringBoot适合前後端分離,打成jar進行部署更加友善快捷。

二、自定義啟動頁

SpringBoot2.0 基礎案例(17):自定義啟動頁,項目打包和指定運作環境

banner.txt内容

=======================
        No BUG
=======================
           

這樣就替換了原先SpringBoot的啟動樣式。

三、打包配置

1、打包pom配置

<!-- 項目建構 -->
<build>
    <finalName>${project.artifactId}</finalName>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering>
        </resource>
    </resources>
    <plugins>
        <!-- SpringBoot插件:JDK編譯插件 -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.3.2</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
        <!-- SpringBoot插件:打包 -->
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <jvmArguments>-Dfile.encoding=UTF-8</jvmArguments>
                <executable>true</executable>
            </configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
        <!-- 跳過單元測試 -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
                <skipTests>true</skipTests>
            </configuration>
        </plugin>
    </plugins>
</build>
           

2、多環境配置

1)application.yml配置

server:
  port: 8017
spring:
  application:
    name: node17-boot-package
  profiles:
    active: dev
           

2)application-dev.yml配置

project:
  sign: develop
           

3)application-pro.yml配置

project:
  sign: product
           

3、環境測試接口

package com.boot.pack.controller;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class PackController {
    @Value("${project.sign}")
    private String sign ;
    @RequestMapping("/getSign")
    public String getSign (){
        return sign ;
    }
}
           

四、打包執行

1、指定子產品打包

mvn clean install -pl node17-boot-package -am -Dmaven.test.skip=true
生成Jar包:node17-boot-package.jar
           
SpringBoot2.0 基礎案例(17):自定義啟動頁,項目打包和指定運作環境

2、運作Jar包

運作dev環境

java -jar node17-boot-package.jar --spring.profiles.active=dev

運作pro環境

java -jar node17-boot-package.jar --spring.profiles.active=pro

http://localhost:8017/getSign
dev環境列印:develop
pro環境列印:product
           

五、源代碼位址

GitHub·位址
https://github.com/cicadasmile/spring-boot-base
GitEE·位址
https://gitee.com/cicadasmile/spring-boot-base
           
SpringBoot2.0 基礎案例(17):自定義啟動頁,項目打包和指定運作環境

繼續閱讀