log4j2 java.lang.NoClassDefFoundError:org / apache / logging / log4j / LogManager

パビ:

Javaアプリケーションでlog4j 2.3を使用しています。mavenを介して依存関係を追加しました。
Eclipseでプログラムを実行するとすべてが正常に動作しますが、mavenでパッケージ化してjarを実行しようとすると、次のエラーが発生します。

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache logging/log4j/LogManager
    at main.myclass.<clinit>(myclass.java:11)
Caused by: java.lang.ClassNotFoundException: org.apache.logging.log4j.LogManager 


    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 1 more

jarから実行しているときにクラスを見つけることができないのはなぜですか?

追加も機能log4j 1.2しませんでした。プログラムはEclipseで正常に実行されているため、依存関係の欠落はありません。

ギャリー:

コマンドラインからアプリケーションjarを実行している場合、依存jarは実行時に使用できません。これら2つのプラグインのいずれかをpom.xmlに含める必要があるため、実行時に依存関係を利用できます。

使用:maven-shade-plugin

<plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-shade-plugin</artifactId>
        <version>2.4.1</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>shade</goal>
            </goals>
            <configuration>
              <transformers>
                <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                  <mainClass>org.sonatype.haven.HavenCli</mainClass>
                </transformer>
              </transformers>
            </configuration>
          </execution>
        </executions>
      </plugin>

使用:maven-dependency-plugin

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <version>2.8</version>
    <executions>
        <execution>
             <id>copy-dependencies</id>
             <phase>package</phase>
             <goals>
                 <goal>copy-dependencies</goal>
             </goals>
             <configuration>
                 <outputDirectory>${project.build.directory}/lib</outputDirectory>
             </configuration>
        </execution>
     </executions>
</plugin>

実行すると、mvn packageuber jar /が生成されるか、依存関係がoutputDirectoryにコピーされます。1つのjarとすべての依存関係を生成するには、maven-shade-pluginを使用します。

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

予期しない例外:java.lang.NoClassDefFoundError:org / apache / log4j / LogManager

分類Dev

java.lang.NoClassDefFoundError:org / apache / logging / log4j / Logger

分類Dev

log4jおよびjava.lang.NoClassDefFoundError:org / apache / log4j / Layout

分類Dev

原因:java.lang.NoClassDefFoundError:org / apache / log4j / Logger

分類Dev

java.lang.NoClassDefFoundError:org / apache / log4j / Loggerエラー

分類Dev

スレッド「main」の例外java.lang.NoClassDefFoundError:生成されたjarファイルのorg / apache / log4j / Logger

分類Dev

Log4j JDK Logging adapter: Apply LogManager system property late in the startup process

分類Dev

java.lang.ClassNotFoundException:org.apache.commons.logging.Log

分類Dev

org.apache.commons.lang3.StringUtilsとorg.apache.logging.log4j.util.Strings

分類Dev

java.lang.NoClassDefFoundError:org / apache / spark / Logging

分類Dev

WebLogic + odata4j = java.lang.NoClassDefFoundError: org/apache/cxf/jaxrs/impl/UriBuilderImpl

分類Dev

java.lang.ClassNotFoundException:org.apache.log4j.Level

分類Dev

java.lang.NoClassDefFoundError:JUnitでRestTemplateをモックしているときにorg / apache / commons / logging / Log

分類Dev

ClasscastException-org.apache.log4j.Loggerをorg.owasp.esapi.Loggerにキャストできません-log4jからlog4j2

分類Dev

slf4jでのlog4j2の使用:java.lang.StackOverflowError

分類Dev

java.lang.NoSuchMethodError:docx4jの実行時のorg.apache.log4j.Logger.getAllAppenders()

分類Dev

Deploying PrimeFaces app to GlassFish4 causes java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItem

分類Dev

原因:org.apache.logging.log4j.LoggingException:log4j-slf4j-implは、log4j-to-slf4jと一緒に存在できません

分類Dev

How to change log4j2 logging path on tomcat?

分類Dev

java.util.loggingをlog4jに送信する方法は?

分類Dev

java.util.loggingとLog4j Loggerの使用の違い

分類Dev

vscode + java + windows:Mavenなしでorg.apache.logging.log4j.Loggerをインポートして使用したい

分類Dev

java.lang.ClassCastException-Log4j

分類Dev

スレッド「メイン」の例外java.lang.NoClassDefFoundError:org / apache / commons / logging / LogFactory

分類Dev

例外を与えるooziespark 2.0アクション:java.lang.NoClassDefFoundError:org / apache / spark / internal / Logging

分類Dev

java.lang.NoClassDefFoundError:org / jboss / logging / BasicLogger

分類Dev

":ORG / apacheの/ログ/ log4jの/ utilに/ ReflectionUtil NoClassDefFoundErrorが" を私は取得しています

分類Dev

Mavenエラー-java.lang.NoClassDefFoundError:org / slf4j / helpers / MarkerIgnoringBase

分類Dev

java.lang.NoClassDefFoundError:org / slf4j / impl / StaticLoggerBinder SBT Scala

Related 関連記事

  1. 1

    予期しない例外:java.lang.NoClassDefFoundError:org / apache / log4j / LogManager

  2. 2

    java.lang.NoClassDefFoundError:org / apache / logging / log4j / Logger

  3. 3

    log4jおよびjava.lang.NoClassDefFoundError:org / apache / log4j / Layout

  4. 4

    原因:java.lang.NoClassDefFoundError:org / apache / log4j / Logger

  5. 5

    java.lang.NoClassDefFoundError:org / apache / log4j / Loggerエラー

  6. 6

    スレッド「main」の例外java.lang.NoClassDefFoundError:生成されたjarファイルのorg / apache / log4j / Logger

  7. 7

    Log4j JDK Logging adapter: Apply LogManager system property late in the startup process

  8. 8

    java.lang.ClassNotFoundException:org.apache.commons.logging.Log

  9. 9

    org.apache.commons.lang3.StringUtilsとorg.apache.logging.log4j.util.Strings

  10. 10

    java.lang.NoClassDefFoundError:org / apache / spark / Logging

  11. 11

    WebLogic + odata4j = java.lang.NoClassDefFoundError: org/apache/cxf/jaxrs/impl/UriBuilderImpl

  12. 12

    java.lang.ClassNotFoundException:org.apache.log4j.Level

  13. 13

    java.lang.NoClassDefFoundError:JUnitでRestTemplateをモックしているときにorg / apache / commons / logging / Log

  14. 14

    ClasscastException-org.apache.log4j.Loggerをorg.owasp.esapi.Loggerにキャストできません-log4jからlog4j2

  15. 15

    slf4jでのlog4j2の使用:java.lang.StackOverflowError

  16. 16

    java.lang.NoSuchMethodError:docx4jの実行時のorg.apache.log4j.Logger.getAllAppenders()

  17. 17

    Deploying PrimeFaces app to GlassFish4 causes java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItem

  18. 18

    原因:org.apache.logging.log4j.LoggingException:log4j-slf4j-implは、log4j-to-slf4jと一緒に存在できません

  19. 19

    How to change log4j2 logging path on tomcat?

  20. 20

    java.util.loggingをlog4jに送信する方法は?

  21. 21

    java.util.loggingとLog4j Loggerの使用の違い

  22. 22

    vscode + java + windows:Mavenなしでorg.apache.logging.log4j.Loggerをインポートして使用したい

  23. 23

    java.lang.ClassCastException-Log4j

  24. 24

    スレッド「メイン」の例外java.lang.NoClassDefFoundError:org / apache / commons / logging / LogFactory

  25. 25

    例外を与えるooziespark 2.0アクション:java.lang.NoClassDefFoundError:org / apache / spark / internal / Logging

  26. 26

    java.lang.NoClassDefFoundError:org / jboss / logging / BasicLogger

  27. 27

    ":ORG / apacheの/ログ/ log4jの/ utilに/ ReflectionUtil NoClassDefFoundErrorが" を私は取得しています

  28. 28

    Mavenエラー-java.lang.NoClassDefFoundError:org / slf4j / helpers / MarkerIgnoringBase

  29. 29

    java.lang.NoClassDefFoundError:org / slf4j / impl / StaticLoggerBinder SBT Scala

ホットタグ

アーカイブ