IntelliJIDEAのSpringBootプロジェクトは、再起動後に動作を停止します

エマヌエーレ・チポラ

これはおそらく初心者の質問ですが、私は物事を整理することができません。

IntelliJIDEAのSpringInitializrインターフェースを使用して、Spring BootJARベースのMavenプロジェクトを作成しました。WebおよびJDBCへの依存。プロジェクトの実行には、Tomcatの埋め込みインスタンスが使用されます。

関連するダイアログから問題なく追加する他のMaven依存関係もいくつかあります。また、Logbackのコピーを含むApache PhoenixシンクライアントJARを手動で追加します(Mavenリポジトリを機能させることはできませんが、これはこの質問に関連するとは思われません)。

私はプロジェクトを完璧に実行することができます。システムの再起動後(私はWindowsを使用しています)、エラーのカスケードが続きます。何よりもまず、ログバック間の競合を示す例外が発生します。

Exception in thread "main" java.lang.IllegalArgumentException: LoggerFactory is not a Logback LoggerContext but Logback is on the classpath. Either remove Logback or the competing implementation (class org.slf4j.impl.Log4jLoggerFactory loaded from [...]). If you are using WebLogic you will need to add 'org.slf4j' to prefer-application-packages in WEB-INF/weblogic.xml: org.slf4j.impl.Log4jLoggerFactory.

PhoenixクライアントJARを変更したくありません。指示に従ってLogbackへのSpringの依存関係を別のロガー(log4j2など)に置き換えることはできますが、埋め込まれたTomcatはコンテナーの作成に失敗します。

仕事に戻るには、プロジェクトを最初から作り直す必要があります。

実際の問題を特定するために、正しい方向に私を向けていただけませんか。ありがとうございました。

スクリプト後:潜在的に識別可能な情報を除いて、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>[RETRACTED]</groupId>
    <artifactId>[RETRACTED]</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>[RETRACTED]</name>
    <description>[RETRACTED]</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.9.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-jdbc</artifactId>
        </dependency>
        <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>
robjwilkins

まず、apache phoenixクライアント(またはその他の依存関係)を手動で追加するのではなく、それらをmaven pom.xmlに追加して、ビルド時にmavenが依存関係を解決するようにする必要があります。プロジェクトに依存関係があり、Mavenが解決に失敗している場合、これは解決する必要のある別の問題ですが、手動で追加することは、いくつかの理由から悪い習慣です。

フェニックスクライアントを依存関係として追加したら、依存関係宣言の一部としてslf4j-log4j12とlog4jを明示的に除外する必要があります。XMLは次のようになります。

    <dependency>
        <groupId>org.apache.phoenix</groupId>
        <artifactId>phoenix-core</artifactId>
        <version>4.13.1-HBase-1.3</version>
        <exclusions>
            <exclusion>
                <groupId>log4j</groupId>
                <artifactId>log4j</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-log4j12</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

これらの必要性を除外する理由は、spring-bootプロジェクトにバンドルされているバージョンと競合しているためです。

うまくいけば、これはあなたの問題を分類するでしょう。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Direct-LVMは再起動後に動作を停止します

分類Dev

Angularのサブジェクトは500の内部エラーの後に動作を停止します

分類Dev

同じプロジェクトでVisualStudioを再起動します

分類Dev

ラップトップの再起動中にバックグラウンドプロセスを停止して開始または再起動する方法

分類Dev

コンピューターの再起動後、Eclipseはワークスペース内のすべてのプロジェクトを削除しましたか?

分類Dev

アプリを再起動またはアップグレードした後、Androidウィジェットの更新が停止します

分類Dev

Typescript対応のVue.jsプロジェクトに含まれると、Vuetifyは動作を停止しました

分類Dev

Visual Studioは、PCの再起動後に、変更されていないプロジェクトを再構築することがあります

分類Dev

Elantechタッチパッドは再起動後に動作を停止しました

分類Dev

Elantechタッチパッドは再起動後に動作を停止しました

分類Dev

クラッシュ後にAndroidがアプリを自動的に再起動するのを停止します

分類Dev

Apache(Ubuntu)アップグレード->再起動後に仮想ホストが動作を停止しました

分類Dev

Visual Studio 2017インストーラープロジェクトは、再インストール時にシステムの再起動を要求します

分類Dev

Discordボットは1回の応答後に動作を停止します

分類Dev

イオンスクロールは、いくつかの使用後に動作を停止します

分類Dev

6分後にスクリプトを再起動します

分類Dev

IntelliJIDEAで動的Webプロジェクトを作成する方法

分類Dev

QuartzおよびMySQLで動作するようにSpringBootプロジェクトを正しく構成するにはどうすればよいですか?

分類Dev

バッチジョブの活性プローブは、完了後にポッドを再起動します

分類Dev

Bxsliderプラグインは、最初の「アクション」後に動作を停止します

分類Dev

Railsバージョンをダウングレードした後、プロジェクトが動作を停止しました

分類Dev

JQuery Draggableは、ポストバック後にupdatepanel内での動作を停止します

分類Dev

動作中のJavaプロジェクトをEclipseにデプロイする

分類Dev

.xprofileとスタートアップアプリケーションのスクリプトは、Ubuntu16.10で数分後に動作を停止します

分類Dev

セットアッププロジェクトは、ユーザー登録ダイアログに応じて動作ロジックを追加します

分類Dev

セットアッププロジェクトは、ユーザー登録ダイアログに応じて動作ロジックを追加します

分類Dev

(Amazon Linux)MySQLはEC2の再起動で動作を停止します

分類Dev

プロジェクトを再起動した場合にのみ、Reactはコンポーネントをレンダリングしません

分類Dev

Siriは既存のプロジェクトで動作していません

Related 関連記事

  1. 1

    Direct-LVMは再起動後に動作を停止します

  2. 2

    Angularのサブジェクトは500の内部エラーの後に動作を停止します

  3. 3

    同じプロジェクトでVisualStudioを再起動します

  4. 4

    ラップトップの再起動中にバックグラウンドプロセスを停止して開始または再起動する方法

  5. 5

    コンピューターの再起動後、Eclipseはワークスペース内のすべてのプロジェクトを削除しましたか?

  6. 6

    アプリを再起動またはアップグレードした後、Androidウィジェットの更新が停止します

  7. 7

    Typescript対応のVue.jsプロジェクトに含まれると、Vuetifyは動作を停止しました

  8. 8

    Visual Studioは、PCの再起動後に、変更されていないプロジェクトを再構築することがあります

  9. 9

    Elantechタッチパッドは再起動後に動作を停止しました

  10. 10

    Elantechタッチパッドは再起動後に動作を停止しました

  11. 11

    クラッシュ後にAndroidがアプリを自動的に再起動するのを停止します

  12. 12

    Apache(Ubuntu)アップグレード->再起動後に仮想ホストが動作を停止しました

  13. 13

    Visual Studio 2017インストーラープロジェクトは、再インストール時にシステムの再起動を要求します

  14. 14

    Discordボットは1回の応答後に動作を停止します

  15. 15

    イオンスクロールは、いくつかの使用後に動作を停止します

  16. 16

    6分後にスクリプトを再起動します

  17. 17

    IntelliJIDEAで動的Webプロジェクトを作成する方法

  18. 18

    QuartzおよびMySQLで動作するようにSpringBootプロジェクトを正しく構成するにはどうすればよいですか?

  19. 19

    バッチジョブの活性プローブは、完了後にポッドを再起動します

  20. 20

    Bxsliderプラグインは、最初の「アクション」後に動作を停止します

  21. 21

    Railsバージョンをダウングレードした後、プロジェクトが動作を停止しました

  22. 22

    JQuery Draggableは、ポストバック後にupdatepanel内での動作を停止します

  23. 23

    動作中のJavaプロジェクトをEclipseにデプロイする

  24. 24

    .xprofileとスタートアップアプリケーションのスクリプトは、Ubuntu16.10で数分後に動作を停止します

  25. 25

    セットアッププロジェクトは、ユーザー登録ダイアログに応じて動作ロジックを追加します

  26. 26

    セットアッププロジェクトは、ユーザー登録ダイアログに応じて動作ロジックを追加します

  27. 27

    (Amazon Linux)MySQLはEC2の再起動で動作を停止します

  28. 28

    プロジェクトを再起動した場合にのみ、Reactはコンポーネントをレンダリングしません

  29. 29

    Siriは既存のプロジェクトで動作していません

ホットタグ

アーカイブ