【发布时间】:2011-04-19 20:39:02
【问题描述】:
我正在编写一个由多个 Maven 模块组成的应用程序。他们都必须将内容记录到自己的日志文件中。我在每个模块的 main/resources 文件夹中创建了一个 log4j.properties 文件。现在,当我从其中一个模块启动应用程序时,它会将所有内容写入该模块的日志文件。我想知道这是否只是因为它可能从该启动模块中获取了根目录并使用它来保存日志文件,但是当我为该启动模块创建一个附加程序时(使用 log4j 属性中的类别)和no rootLogger 它给了我一个关于其他模块中找不到其附加程序的类的错误,这表明未找到或读取每个模块中的 log4j.properties 文件。任何人都知道如何解决这个问题并让这些模块使用这些属性文件,或者我是否必须将所有附加程序放在一个大的 log4j.properties 文件中,导致所有日志出现在该启动模块的根文件夹中,而不是那些其他模块的根文件夹?
我希望问题足够清楚,可以理解,否则请随时询问详细信息。
【问题讨论】:
-
你能提供更多关于你的应用的信息吗?例如,它是一个网络应用程序吗?是否部署到应用服务器?
-
这个应用程序将每周运行以更新包含蛋白质数据的数据库。首先,它检查其他几个数据库中是否有新数据,如果有,它会读取该数据,对其进行一些计算(通过将其发送到进行计算的特殊 Web 服务)从该 Web 服务中取回数据,然后将其输入我的蛋白质数据库。其中一个模块是与我的数据库对话的休眠模块。我遇到的问题是休眠类型会记录它所做的一切。我想将这些日志与其他模块的日志分开。
标签: java properties log4j maven