[解決済み] SpringBootです。以下の候補からメインクラスを1つも見つけることができません。
2022-02-15 20:52:54
質問
Spring Initializer、組み込み用Tomcat、Thymeleafテンプレートエンジンを使って、Spring BootのWebアプリケーションを生成しました。 使用した技術:Spring Boot 1.4.2.RELEASE, Spring 4.3.4.RELEASE, Thymeleaf 2.1.5.RELEASE, Tomcat Embed 8.5.6, Maven 3, Java 8
私は、以下の2つのクラスでSpringBootアプリを持っています。
@Profile("!war")
@SpringBootApplication
@Import({SecurityConfig.class ,PersistenceConfig.class, ServiceConfig.class})
public class BookApplication {
public static void main(String[] args) {
SpringApplication.run(BookApplication.class, args);
}
}
@Profile("war")
@Import({SecurityConfig.class ,PersistenceConfig.class})
@SpringBootApplication
public class BookApplicationWar extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(BookApplicationWar.class);
}
public static void main(String[] args) throws Exception {
SpringApplication.run(BookApplicationWar.class, args);
}
}
私はこのコマンドでwarを生成します。
mvn clean package -DskipTests -Dspring.profiles.active=pebloc,war -DAPP-KEY=pebloc
しかし、このようなエラーが発生しました。
[ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:1.5.2.RELEASE:repackage (default) on project book: Execution default of goal org.springframework.boot:spring-boot-maven-plugin:1.5.2.RELEASE:repackage failed: Unable to find a single main class from the following candidates [com.tdk.BookApplication, com.tdk.BookApplicationWar] -> [Help 1]
解決方法は?
複数のメインクラスがある場合、明示的に メインクラスの設定 を各プロファイルで使用します。
<profiles>
<profile>
<id>profile1</id>
<properties>
<spring.boot.mainclass>com.SomeClass</spring.boot.mainclass>
</properties>
</profile>
<profile>
<id>profile2</id>
<properties>
<spring.boot.mainclass>com.SomeOtherClass</spring.boot.mainclass>
</properties>
</profile>
</profiles>
...
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>1.5.2.RELEASE</version>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
<configuration>
<mainClass>${spring.boot.mainclass}</mainClass>
</configuration>
</execution>
</executions>
...
</plugin>
関連
-
[解決済み] Spring boot - マネージドタイプではありません。
-
java.sql.SQLException を解決します。ユーザー 'root'@'localhost' (パスワード: YES を使用) のためのアクセスが拒否されました。
-
SpringトランザクションとMySQLトランザクション詳細インタビュー
-
ソースコード解析:SpringはどのようにIOCコンテナにBeanを登録するのですか?
-
SpringBootで'Application'を実行中にエラーが発生しました。コマンドラインが長すぎるため、コマンドラインを短くしてください。
-
解決方法 原因:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException.NonTransientConnectionExceptionが原因です。
-
アーティファクトXXXXが見つからず、Mavenにalibaba.cloudの依存関係を導入することができませんでした。
-
[解決済み] org.hibernate.tool.schema.spi.CommandAcceptanceException: SpringBoot での h2 と JPA による JDBC 文での DDL 実行エラー
-
[解決済み] java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet
-
[解決済み】Spring MVCとSpring Bootの違い【終了しました
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] <mvc:default-servlet-handler />の必要性と用途は何ですか?
-
SpringBoot の例外です。クラスパスリソースに定義された名前 'entityManagerFactory'を持つビーンの作成エラー
-
クラスパス上に Spring WebApplicationInitializer のタイプが検出されない Loading configuration file not found or spring main configuration not found.
-
Tomcat server_A 子コンテナの起動に失敗しました。
-
[解決済み] Spring DataでOrderByをfindAllで使用する方法
-
[解決済み】BeanFactoryとApplicationContextの比較
-
[解決済み] Spring MVC RESTコントローラでHTTPヘッダ情報にアクセスする方法は?
-
[解決済み] Spring Boot ホワイトラベルエラーページの削除
-
[解決済み] Spring 3 RequestMapping。パスの値を取得する
-
[解決済み] コンストラクタの引数を必要とする Bean を @Autowire する方法はありますか?