我想用log4j制作jetty服务器日志。当我使用IDEA部署爆炸war
时,它运行良好。 IDEA在root.xml
目录中创建此文件(/tmp
):
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd">
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
<Set name="contextPath">/</Set>
<Set name="resourceBase">/home/username/Desktop/project/ROOT/target/root</Set>
</Configure>
将此文件复制到/opt/jetty/webapps
并重新启动jetty服务后,它会停止记录。我没有改变项目中的任何其他内容。我甚至没有改变目录,一切都是一样的。
我只想在没有IDEA的情况下部署。
如何在Jetty 9服务器上使用手动部署的爆炸war
使log4j正常工作?
答案 0 :(得分:3)
从IDEA部署时,它从特权用户运行,并具有对日志的写入权限。
服务器有自己的日志文件和自己的用户。它可能没有适当的权限来编写您正在检查的日志。所以你应该检查服务器自己的日志文件。也许你会在FileNotFoundException
找到Permission Denied
。您需要授予Jetty用户编辑日志文件的权限。