2016-01-23 95 views
0

我在我的Java应用程序中使用Log4J来记录某些东西,当应用程序运行时。我使用“nohup java -jar application.jar &”命令在我的Ubuntu 14 VPS上启动它,即使在关闭终端时也可以使其保持活动状态。在Ubuntu下运行带有Log4j的可执行jar 14

只要终端打开,应用程序就会登录日志文件,当我关闭终端时,它不会。但它仍在运行。

我的log4j.xml:

<?xml version="1.0" encoding="UTF-8" ?> 
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> 
<log4j:configuration debug="true" 
    xmlns:log4j='http://jakarta.apache.org/log4j/'> 

    <appender name="console" class="org.apache.log4j.ConsoleAppender"> 
     <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" 
      value="%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n" /> 
     </layout> 
    </appender> 

    <appender name="file" class="org.apache.log4j.RollingFileAppender"> 
     <param name="append" value="true" /> 
     <param name="maxFileSize" value="10MB" /> 
     <param name="maxBackupIndex" value="10" /> 
     <param name="file" value="LOG/connect.log" /> 
     <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" 
      value="%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n" /> 
     </layout> 
    </appender> 

    <root> 
     <level value="DEBUG" /> 
     <appender-ref ref="console" /> 
     <appender-ref ref="file" /> 
    </root> 

</log4j:configuration> 

我怎么开始的jar:

回答

0

我也曾经有过类似的问题在Ubuntu 12.04,我加入这个可执行文件作为一个服务固定它启用respawn而不是使用nohup。在os的/ etc/init /文件夹中创建一个.conf文件。

start on runlevel [2345] 
respawn 
exec /usr/bin/java -jar /path/to/jar 

启动和使用维修服务名站和服务服务名启动

+0

如何添加启用了可执行文件与重生服务手动停止服务? – GAlexMES

+0

https://help.ubuntu.com/community/UbuntuBootupHowto这可能有助于 –

+0

手动启动或停止,使用sudo的启动服务名和 须藤停止服务名分别 –