今天重點來學習Spring Boot項目的7種啓動方式。java
也是最多見的本地啓動的一種web
@SpringBootApplicationpublic class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); }}
這種方法就是執行main方法直接啓動。也是咱們大多數人本地啓動的方法。spring
把項目打成jar包,而後使用命令app
java -jar XXX.jar
webapp
還能夠在此命令後天添加各類參數。好比說:指定端口、設置堆內存相關參數、多環境指定某個環境等。maven
import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplicationpublic class DemoApplication { public static void main(String[] args) { SpringApplication springApplication=new SpringApplication(DemoApplication.class); //能夠自定義監聽器等 springApplication.run(args); }}
import org.springframework.boot.SpringApplication;import org.springframework.boot.SpringBootConfiguration;import org.springframework.boot.autoconfigure.EnableAutoConfiguration;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.context.annotation.ComponentScan;@SpringBootConfiguration@EnableAutoConfiguration@ComponentScanpublic class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); }}
這種方式更加靈活,好比說:ComponentScan
能夠自定義包目錄。ide
目錄下進行啓動,咱們能夠對jar進行解壓spring-boot
在META-INF目錄下有個META-INF/MANIFEST.MF
文件,MANIFEST.MF
內容學習
這裏注重於的是Start-Class就是咱們的Application類。還有一個Main-Class,當一些老項目不能使用jar啓動的時候,須要使用包目錄下啓動的狀況,咱們就能夠這麼來啓動項目:spa
java org.springframework.boot.loader.JarLauncher
來啓動咱們的項目的。
war包啓動:從 jar 切換成 war 打包方式有兩種
第1種:
在pom.xml
中修改或者添加war
建立webapp/WEB-INF
目錄(相對於src/main
)
新建一個空的web.xml
1.在pom.xml
中修改或者添加<packaging>war</packaging>
2.在pom.xml
文件中添加插件
<plugin> <artifactId>maven-war-plugin</artifactId> <configuration> <failOnMissingWebXml>false</failOnMissingWebXml> </configuration></plugin>
打成war包,啓動方式
java -jar demo.war
原理是和main方法啓動同樣的。使用 maven命令;
mvn spring-boot:run