我有一个Java项目,里面有很多文件,使用的是LOG4J。现在我正在尝试将它移植到Android平台上。有没有可能通过LOG4J函数调用来重用代码?
当前理解:
1.属性配置不起作用(Bean依赖关系)
1.我试过用安卓系统的LOG4J和SL4J库,没有成功。
工作。但是没有用
org.apache.log4j.Logger root = org.apache.log4j.Logger.getRootLogger();
final SocketAppender appender = new SocketAppender("192.168.123.123", 3333);
root.addAppender(appender);
// SLF4J - Not working
org.slf4j.Logger logger;
logger = LoggerFactory.getLogger(MyClass.class);
// LOG4J for Android - Not working
ConfigureLog4J.configure();
logger = Logger.getLogger( MyClass.class );
我是不是漏掉了什么?有没有什么有用的例子?
3条答案
按热度按时间yacmzcpb1#
通过使用android-logging-log4j.jar解决。
以下是示例代码:
在您的程式码中,取代下列行:
具有:
czfnxgou2#
我的回答是,这是一种更具未来性和横向思维的方法;- ).
我自己也使用android-logging-log4j有一段时间了,但是它在德兴的时候引起了大量的警告(实际上看起来像是错误)。
log4j jar中也有很多不必要的东西,比如Chainsaw日志记录UI(用Swing编写,因此在Android上无用)。
我已经通过https://github.com/tony19/logback-android切换到了logback。到目前为止我很满意。在构建的时候没有更多的垃圾邮件。
另外,看起来log4j 1.x已经不再开发了,看看https://github.com/apache/log4j/tree/trunk-最后一次提交是在很多年前。
而logback似乎是继任者。
xghobddn3#
看一下android-log4j2。该项目提供了运行时依赖jar,它不需要您更改任何log4j依赖代码,并使所有日志适应Android日志记录。没有API需要学习。
它是log4j-core的直接替代品,因此只需确保将其更换为
android-log4j 2在您的Android项目中。