gpt4 book ai didi

java - 如何设置log4j?

转载 作者:行者123 更新时间:2023-12-02 01:17:55 27 4
gpt4 key购买 nike

我已经尝试使用jzy3d api来绘制3d图,我尝试使用maven进行设置(我对此很陌生),我基本上只是复制了api页面告诉我的内容,但我一直遇到log4j 警告。

<?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>org.jzy3d</groupId>
<artifactId>jzy3d-tutorials</artifactId>
<version>1.0.3-SNAPSHOT</version>

<name>Jzy3d Tutorials</name>

<!--To retrieve Jzy3d dependencies
<repositories>
<repository>
<id>jzy3d-snapshots</id>
<name>Jzy3d Snapshots</name>
<url>http://maven.jzy3d.org/snapshots/</url>
</repository>
<repository>
<id>jzy3d-releases</id>
<name>Jzy3d Releases</name>
<url>http://maven.jzy3d.org/releases/</url>
</repository>
</repositories> -->

<repositories>
<repository>
<id>Sonatype-snapshots</id>
<name>Sonatyp Snapshots</name>
<url>https://oss.sonatype.org/content/groups/public</url>
</repository>
<repository>
<id>Sonatype-releases-staging</id>
<name>Sonatype Releases Staging</name>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2</url>
</repository>
</repositories>


<!--To deploy tutorials: 1) this project does not references master to be
able to be build alone 2) master still reference this project to build it
with the API involve being deployable by mvn deploy -->
<!--<distributionManagement>
<repository>
<id>jzy3d-ftp-maven</id>
<name>Jzy3d Maven Folder</name>
<url>ftp://www.jzy3d.org/v1/maven/releases</url>
</repository>
<snapshotRepository>
<id>jzy3d-ftp-maven</id>
<name>Jzy3d Maven Folder SNAPSHOTS</name>
<url>ftp://www.jzy3d.org/v1/maven/snapshots</url>
</snapshotRepository>
</distributionManagement>-->

<distributionManagement>
<snapshotRepository>
<id>ossrh</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
<repository>
<id>ossrh</id>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<version.jzy3d>${project.version}</version.jzy3d>
<version.java.source>1.8</version.java.source>
<version.java.target>1.8</version.java.target>
<version.mvn.compiler>3.0</version.mvn.compiler>
<version.mvn.ftp>1.0-beta-6</version.mvn.ftp>
<version.mvn.deploy>2.4</version.mvn.deploy>
<version.mvn.javadoc>2.9.1</version.mvn.javadoc>
<version.mvn.release>2.5.3</version.mvn.release>
<version.libs.junit>4.10</version.libs.junit>
<version.libs.swt>4.2.1</version.libs.swt>
</properties>


<dependencies>
<dependency>
<groupId>org.jzy3d</groupId>
<artifactId>jzy3d-api</artifactId>
<version>${project.version}</version>
</dependency>

<dependency>
<groupId>com.miglayout</groupId>
<artifactId>miglayout</artifactId>
<version>3.7.4</version>
</dependency>
<dependency>
<groupId>com.opencsv</groupId>
<artifactId>opencsv</artifactId>
<version>3.7</version>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.0</version>
<configuration>
<source>${version.java.source}</source>
<target>${version.java.target}</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>${version.mvn.deploy}</version>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<!--<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
</configuration>
</plugin>-->

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<executions>
<execution>
<id>attach-sources</id>
<phase>deploy</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<executions>
<execution>
<id>attach-javadocs</id>
<phase>deploy</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
log4j:WARN No appenders could be found for logger (org.jzy3d.chart.factories.ChartComponentFactory).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

最佳答案

从警告来看,听起来记录器可能有一个不正确的 AppenderRef log4j.xml(或 log4j2.xml)文件中的名称。在这个答案中,我使用的是 log4j2。

示例 log4j2.xml 文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE XML>
<Configuration status="WARN">

<!-- These are appenders -->
<Appenders>
<File name="ThisFile" target="this/path/to/someAppLog.log">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</File>
</Appenders>

<!-- These are Loggers -->
<Loggers>
<Logger level="info">
<AppenderRef ref="ThisFile"/>
</Logger>
</Loggers>


</Configuration>

详细信息:

  • 附加器
  • 记录器
    • 带有附加程序列表的记录器列表。
    • 在某些情况下,您可能需要 Logger有多个附加程序。
    • AppenderRef位于 <Logger ...>一定有它的ref与您想要登录的appender的名称相匹配,无论它是文件、控制台等。

在上面的文件上下文中,我命名为 File里面<Appenders>堵塞。里面<Loggers> block ,我使用 <AppenderRef ref="ThisLogger" /> 引用了它的 Logger .

<小时/>

更新 1:

在您的 pom.xml 中,您缺少一个插件。您应该引用此:

<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.12.1</version>
</dependency>

如果这不是您想要的版本,请随时检查MvnRepository

<小时/>

希望这有帮助。如果不起作用,请告诉我什么不起作用,我会尽我所能提供帮助。 :)

关于java - 如何设置log4j?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57647674/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com