【发布时间】:2018-10-22 07:00:37
【问题描述】:
当我使用 aws athena sdk、aws java athena sdk、log4j 构建我的项目时,我失败了。 这是消息
log4j:ERROR A "org.apache.log4j.ConsoleAppender" object is not assignable to a "com.simba.athena.shaded.apache.log4j.Appender" variable.
log4j:ERROR The class "com.simba.athena.shaded.apache.log4j.Appender" was
loaded by
log4j:ERROR [sun.misc.Launcher$AppClassLoader@18b4aac2] whereas object of type
log4j:ERROR "org.apache.log4j.ConsoleAppender" was loaded by [sun.misc.Launcher$AppClassLoader@18b4aac2].
log4j:ERROR Could not instantiate appender named "A1".
这是我的 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>Athena</groupId>
<artifactId>Athena</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<!-- https://mvnrepository.com/artifact/log4j/log4j -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk-athena -->
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-athena</artifactId>
<version>1.11.433</version>
</dependency>
</dependencies>
还有我的 log4j.properties
log4j.rootLogger=WARN, A1
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
# Turn on DEBUG logging in com.amazonaws.request to log
# a summary of requests/responses with AWS request IDs
log4j.logger.com.amazonaws.request=DEBUG
非常感谢
【问题讨论】:
-
您的代码在哪个上下文中运行会引发此异常?看起来您的应用程序想要使用 Amazon 特定的记录器。这个错误是来自您的应用程序还是来自亚马逊部署的服务?
-
这是我的申请。我认为 log4j.properties 可能有问题,因为如果配置不包含“amazonaws.request”,它不会抛出错误
标签: java log4j aws-sdk amazon-athena