2017-10-04 122 views
0

由Apache的描述使用log4j的-1.2-API,但log4j1.x類都沒有找到

<dependencies> 
    <dependency> 
    <groupId>org.apache.logging.log4j</groupId> 
    <artifactId>log4j-1.2-api</artifactId> 
    <version>2.9.1</version> 
    </dependency> 
</dependencies> 

但是,試圖導入

import org.apache.log4j.Logger; 

據時,我仍然看到了錯誤Apache,這應該工作?

https://logging.apache.org/log4j/2.x/maven-artifacts.html

感謝

+0

如果.jar真的是由maven下載的,你有沒有驗證過? – DevDio

回答

0

你必須把依賴於pom.xml

<dependencies> 
    <dependency> 
    <groupId>org.apache.logging.log4j</groupId> 
    <artifactId>log4j-api</artifactId> 
    <version>2.9.1</version> 
    </dependency> 
    <dependency> 
    <groupId>org.apache.logging.log4j</groupId> 
    <artifactId>log4j-core</artifactId> 
    <version>2.9.1</version> 
    </dependency> 
</dependencies> 

,進口應該是:

import org.apache.logging.log4j.Logger; 
+0

這正是我想要避免的。我不想重寫所有使用log4j的代碼。 Apache通過log4j-1.2-api爲log4j2提供了橋樑https://logging.apache.org/log4j/2.x/manual/migration.html – Mark

0

Maven的依賴性要求阿帕奇的橋樑API給出一種類型,但這裏的例子指定「捆綁」: https://logging.apache.org/log4j/2.0/log4j-1.2-api/dependency-info.html

如果我這樣做,那麼我不明白的log4j-1.2-api.jar文件在我的依賴關係,如果我設置類型到'jar'然後我得到jar和log4j-api-2.9.1.jar並且可以導入org.apache.log4j。