springBoot啟動輸出三行日志控制臺自動停止操作

springBoot啟動輸出三行日志控制臺自動停止

在https://start.spring.io/(官網)快速創建的springBoot工程,導入到myeclipse中後,啟動後自動結束瞭。

pom.xml:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 <modelVersion>4.0.0</modelVersion>

 <groupId>net.xiaof</groupId>
 <artifactId>springboot_day01</artifactId>
 <version>0.0.1-SNAPSHOT</version>
 <packaging>war</packaging>

 <name>springboot_day01</name>
 <description>springboot_day01 project for Spring Boot</description>

 <parent>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-parent</artifactId>
  <version>2.0.1.RELEASE</version>
  <relativePath/> <!-- lookup parent from repository -->
 </parent>

 <properties>
  <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
  <java.version>1.8</java.version>
 </properties>

 <dependencies>
  <dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-web</artifactId>
  </dependency>

  <dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-test</artifactId>
   <scope>test</scope>
  </dependency>
 </dependencies>

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

註:此版本為spring-boot 2.2.2。

啟動類StartApplication.java:

package net.xiaof.boot;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class StartApplication {
 public static void main(String[] args) {
  SpringApplication.run(StartApplication.class, args);
  System.out.println("===================================================================");
  System.out.println("(◕ˇ∀ˇ◕)  springboot started ");
  System.out.println("===================================================================");
 }
}

啟動console如下:

. ____ _ __ _ _
/\\ / ___’_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | ‘_ | ‘_| | ‘_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
‘ |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.0.1.RELEASE)

2019-12-17 22:55:44.874 INFO 13248 — [ main] net.xiaof.boot.StartApplication : Starting StartApplication on XIAOHU-WIN10 with PID 13248 (D:\MyEclipse_2017_workspaces\springboot_day01\target\classes started by XIAO in D:\MyEclipse_2017_workspaces\springboot_day01)
2019-12-17 22:55:44.876 INFO 13248 — [ main] net.xiaof.boot.StartApplication : No active profile set, falling back to default profiles: default
2019-12-17 22:55:47.117 INFO 13248 — [ main] net.xiaof.boot.StartApplication : Started StartApplication in 2.479 seconds (JVM running for 2.869)

然後Console自動停止瞭。

解決方法:

建議降低版本,更換為spring-boot 2.0.1。

SpringBoot啟動項目後自動關閉,日志打印”Stopping Service”

問題描述:

Java -jar jar包,啟動springboot項目,在還沒啟動完成,日志打印出“Stopping Service”,查看jar進程存在,但訪問服務不通,日志無報錯。

問題排查:

嘗試瞭各種方式,重新打包,修改tomcat為外部tomcat,修改端口等等都不起作用,依然存在問題。

後來猜測報錯瞭,隻是因為日志沒有打印出來,又去修改日志級別及其他配置,發現依然看不到問題。

後來嘗試修改springboot的啟動main方法,

原(無報錯日志):

        public static void main(String[] args) { 
           SpringApplication.run(TestApp.class, args); 
        }

修改後(無報錯日志):

        public static void main(String[] args) { 
            Try{
                  SpringApplication.run(TestApp.class, args);
            }catch(Exception e){
                e.printStackTrace();
            }
        }

最終修改(有報錯日志):

        public static void main(String[] args) {
            Try{
                  SpringApplication.run(TestApp.class, args);
            }catch(Exception e){
                LOGGER.error(“啟動報錯”,e);
            }
        }

問題分析:

SpringBoot 啟動main方法要自己tryCatch一下,打印日志,建議最好使用Logger去輸出日志,盡量不要輸出到控制臺,因為很多公司日志配置不讓輸出到控制臺,故有問題的時候也不會有日志。

能看到報錯日志,那麼問題排查就很簡單瞭。

(最終是因為MQ配置有問題導致啟動報錯)

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。

推薦閱讀: