Java 无法让log4j在游戏中运行!框架2.2.1(scala项目)

Java 无法让log4j在游戏中运行!框架2.2.1(scala项目),java,scala,playframework-2.0,log4j,Java,Scala,Playframework 2.0,Log4j,我无法让log4j在play framework 2.2.1中运行 我使用以下log4j.properties: log4j.rootLogger=INFO log4j.logger.deng=INFO log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender log4j.appender.STDOUT.layout=org.apache.log4j.PatternLayout log4j.appender.STDOUT.layout.Conv

我无法让log4j在play framework 2.2.1中运行

我使用以下log4j.properties:

log4j.rootLogger=INFO
log4j.logger.deng=INFO
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
log4j.appender.STDOUT.layout=org.apache.log4j.PatternLayout
log4j.appender.STDOUT.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n
application.conf:

application.log=INFO
application.log.path=/log4j.properties
scala使用示例:

object SomeService {

  private val log = Logger.getLogger(this.getClass())

  def someMethod() = {
      log.error("test")
  }
}
如果运行测试,我将获得以下控制台输出:

log4j:WARN No appenders could be found for logger (SomeService.class).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
有人能帮我吗


非常感谢

首先,摆脱log4J的东西(这是2008年的事),通过Play附带的SLF4J使用Logback。因为他们也是Logback的作者

然后创建一个名为
application logger.xml
的应用程序,并将其复制到Play应用程序的conf文件夹中,以便在部署时加载


有关使用Play配置Logback的更多信息!框架,请参见

至少在默认情况下,Play 2通过slf4j api使用logback库。有什么不使用的理由吗?必须加载属性文件。我不确定它是否是必需的,或者Play/Logback是否默认为查找它,但是在我们的应用程序中,我们在application.conf中显式地设置了“Logback.configurationFile=application logger.xml”。我想我会提到它,以防万一。更新:Play默认情况下会加载conf/application-logger.xml或conf/logger.xml在2.3.x Play中不是这样!遗憾的是,这样的文件没有被提取。如果我想打印API的日志,而API使用log4j,该怎么办?Logback不能很好地使用Spark,有些项目需要play和Spark