部署Spring

  • 部署到Java應用程序服務器 -如果必須將應用程序部署到Tomcat,WebSphere,WebLogic或任何其他傳統的Java應用程序服務器,則除了將應用程序構建爲WAR文件之外,您別無選擇。
  • 部署到雲 —如果您打算將應用程序部署到雲,無論是Cloud Foundry,Amazon Web Services(AWS),Azure,Google Cloud Platform還是大多數其他任何雲平臺,那麼可執行JAR文件都是最佳選擇。即使雲平臺支持WAR部署,JAR文件格式也比爲應用程序服務器部署設計的WAR格式簡單得多。

構建和部署WAR文件

事實證明,將Spring Boot應用程序構建到WAR文件並不難。實際上,如果在通過Initializr創建應用程序時選擇了WAR選項,則無需執行其他操作。

Initializr確保所生成的項目將包含servlet初始化程序類,並且該構建文件將用於生成WAR文件。但是,如果您選擇從Initializr構建一個JAR文件,請繼續。

首先,您需要一種配置Spring的方法DispatcherServlet

package tacos.ingredients;


import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.context.web.SpringBootServletInitializer;


public class IngredientServiceServletInitializer
       extends SpringBootServletInitializer {
  @Override
  protected SpringApplicationBuilder configure(
                                  SpringApplicationBuilder builder) {
    return builder.sources(IngredientServiceApplication.class);
  }
}

現在,您已經編寫了servlet初始化程序類,您必須對項目構建進行一些小的更改。如果使用Maven進行構建,則所需的更改非常簡單,只需確保將<packaging>pom.xml 中的元素設置爲即可war:

<packaging>war</packaging>

構建應用程序了。使用Maven,您將使用Initializr用於執行程序包目標的Maven包裝器腳本:

$ mvnw package

如果構建成功,則可以在目標目錄中找到WAR文件。

構建完成後,WAR文件將位於build / libs目錄中。剩下的就是部署應用程序了。

同樣,Gradle構建所需的更改也很簡單。您必須war在build.gradle文件中應用插件:

apply plugin: 'war'

使用Gradle包裝器執行構建任務:

$ gradlew build

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章