Problem mit log4j - beim Start des Images kommt immer die Meldung: "ERROR StatusLogger Log4j2 could not find a logging implementation. Please add log4j-core to the classpath. Using SimpleLogger to log to the console..."

This commit is contained in:
Konrad Neitzel
2022-10-17 20:03:31 +02:00
parent 9bbbe0fa4d
commit 8e81f08656
3 changed files with 121 additions and 11 deletions
+114 -9
View File
@@ -25,6 +25,7 @@
<!-- Dependency versions -->
<junit.version>5.9.1</junit.version>
<javafx.version>19</javafx.version>
<log4j.version>2.19.0</log4j.version>
<lombok.version>1.18.24</lombok.version>
<jetbrains.annotations.version>23.0.0</jetbrains.annotations.version>
@@ -42,10 +43,10 @@
<moditect.maven.plugin>1.0.0.RC2</moditect.maven.plugin>
<jpackage.maven.plugin>0.1.3</jpackage.maven.plugin>
<maven.pmd.version>3.16.0</maven.pmd.version>
<pmd.version>6.49.0</pmd.version>
<pmd.version>6.50.0</pmd.version>
<codehaus.version.plugin>2.11.0</codehaus.version.plugin>
<spotbugs.maven.plugin>4.7.2.0</spotbugs.maven.plugin>
<spotbugs.version>4.7.2</spotbugs.version>
<spotbugs.version>4.7.3</spotbugs.version>
<!-- other properties -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -86,6 +87,18 @@
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>${log4j.version}</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>${log4j.version}</version>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
@@ -198,6 +211,7 @@
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.moditect</groupId>
<artifactId>moditect-maven-plugin</artifactId>
@@ -207,22 +221,110 @@
<id>add-module-info-to-dependencies</id>
<phase>package</phase>
<configuration>
<jvmVersion>${java.version}</jvmVersion>
<outputDirectory>${project.build.directory}/modules</outputDirectory>
<overwriteExistingFiles>true</overwriteExistingFiles>
<!-- Beispiel wie eine Dependency ohne module-info diese bekommen kann! -->
<!--
<modules>
<!--
<module>
<artifact>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
</artifact>
<moduleInfo>
<name>org.json</name>
<name>org.apache.logging.log4j.core</name>
</moduleInfo>
</module>
-->
<module>
<artifact>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>${log4j.version}</version>
</artifact>
<moduleInfoSource>
open module org.apache.logging.log4j.core {
requires java.logging;
requires java.rmi;
requires transitive java.compiler;
requires transitive java.desktop;
requires transitive java.management;
requires transitive java.naming;
requires transitive java.scripting;
requires transitive java.sql;
requires transitive java.xml;
exports org.apache.logging.log4j.core;
exports org.apache.logging.log4j.core.appender;
exports org.apache.logging.log4j.core.appender.db;
exports org.apache.logging.log4j.core.appender.db.jdbc;
exports org.apache.logging.log4j.core.appender.mom;
exports org.apache.logging.log4j.core.appender.mom.jeromq;
exports org.apache.logging.log4j.core.appender.mom.kafka;
exports org.apache.logging.log4j.core.appender.nosql;
exports org.apache.logging.log4j.core.appender.rewrite;
exports org.apache.logging.log4j.core.appender.rolling;
exports org.apache.logging.log4j.core.appender.rolling.action;
exports org.apache.logging.log4j.core.appender.routing;
exports org.apache.logging.log4j.core.async;
exports org.apache.logging.log4j.core.config;
exports org.apache.logging.log4j.core.config.arbiters;
exports org.apache.logging.log4j.core.config.builder.api;
exports org.apache.logging.log4j.core.config.builder.impl;
exports org.apache.logging.log4j.core.config.composite;
exports org.apache.logging.log4j.core.config.json;
exports org.apache.logging.log4j.core.config.plugins;
exports org.apache.logging.log4j.core.config.plugins.convert;
exports org.apache.logging.log4j.core.config.plugins.processor;
exports org.apache.logging.log4j.core.config.plugins.util;
exports org.apache.logging.log4j.core.config.plugins.validation;
exports org.apache.logging.log4j.core.config.plugins.validation.constraints;
exports org.apache.logging.log4j.core.config.plugins.validation.validators;
exports org.apache.logging.log4j.core.config.plugins.visitors;
exports org.apache.logging.log4j.core.config.properties;
exports org.apache.logging.log4j.core.config.status;
exports org.apache.logging.log4j.core.config.xml;
exports org.apache.logging.log4j.core.config.yaml;
exports org.apache.logging.log4j.core.filter;
exports org.apache.logging.log4j.core.filter.mutable;
exports org.apache.logging.log4j.core.impl;
exports org.apache.logging.log4j.core.jackson;
exports org.apache.logging.log4j.core.jmx;
exports org.apache.logging.log4j.core.layout;
exports org.apache.logging.log4j.core.layout.internal;
exports org.apache.logging.log4j.core.lookup;
exports org.apache.logging.log4j.core.message;
exports org.apache.logging.log4j.core.net;
exports org.apache.logging.log4j.core.net.ssl;
exports org.apache.logging.log4j.core.osgi;
exports org.apache.logging.log4j.core.parser;
exports org.apache.logging.log4j.core.pattern;
exports org.apache.logging.log4j.core.script;
exports org.apache.logging.log4j.core.selector;
exports org.apache.logging.log4j.core.time;
exports org.apache.logging.log4j.core.time.internal;
exports org.apache.logging.log4j.core.tools;
exports org.apache.logging.log4j.core.tools.picocli;
exports org.apache.logging.log4j.core.util;
exports org.apache.logging.log4j.core.util.datetime;
exports org.apache.logging.log4j.core.util.internal;
provides javax.annotation.processing.Processor with
org.apache.logging.log4j.core.config.plugins.processor.PluginProcessor;
provides org.apache.logging.log4j.core.util.ContextDataProvider with
org.apache.logging.log4j.core.impl.ThreadContextDataProvider;
provides org.apache.logging.log4j.message.ThreadDumpMessage.ThreadInfoFactory with
org.apache.logging.log4j.core.message.ExtendedThreadInfoFactory;
provides org.apache.logging.log4j.spi.Provider with
org.apache.logging.log4j.core.impl.Log4jProvider;
}
</moduleInfoSource>
</module>
</modules>
-->
<module>
<mainClass>${main.class}</mainClass>
@@ -230,7 +332,9 @@
</module>
<jdepsExtraArgs>
--ignore-missing-deps
<arg>--ignore-missing-deps</arg>
<arg>--multi-release</arg>
<arg>${java.version}</arg>
</jdepsExtraArgs>
</configuration>
<goals>
@@ -255,6 +359,7 @@
<module>${main.module}</module>
</launcher>
<compression>2</compression>
<!-- <jarInclusionPolicy>NONE</jarInclusionPolicy> -->
<jarInclusionPolicy>APP_WITH_DEPENDENCIES</jarInclusionPolicy>
<stripDebug>true</stripDebug>
<outputDirectory>${project.build.directory}/jlink-image</outputDirectory>