1. 異常エラー
Springboot プロジェクトは IntelliJ IDEA を使用して Maven プロジェクトを war パッケージにパックし、pom.xml ファイルによって依存関係が導入されます。
そして、maven パッケージを介してパッケージ化した後、それを Tomcat の web-apps ファイルの下に置きます
同時にconfフォルダ配下のserver.xmlファイルが変更され、tomcat起動時に以下の問題が発生しました。
2、その理由
SpringApplicationBuilder は Spring アプリケーションの構築に使用され、便利で流暢な API とコンテキスト階層のサポートを備えた SpringApplication および ApplicationContext インスタンスのビルダーです。SpringApplicationBuilder がスタートアップ クラスに追加されていない場合、tomcat は SpringBoot アプリケーションをビルドできません。
3. 解決策
スタートアップクラスで必須
- org.springframework.boot.context.web.SpringBootServletInitializer クラスを継承する
- configure(SpringApplicationBuilder アプリケーション) メソッドをオーバーライドする
public class CExperimentPlatformApplication extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(CExperimentPlatformApplication.class, args);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(CExperimentPlatformApplication.class);
}
}