java代码和unix守护进程

java代码和unix守护进程,java,linux,daemon,nohup,Java,Linux,Daemon,Nohup,我在尝试使用nohup运行java代码时遇到问题: [root@ /]# nohup opt/jdk1.6.0_22/bin/java -cp "lib/hibernate/*:lib/tuscany-sca-1.6/lib/*:lib/tuscany-sca-1.6/modules/*:./*" com.lab.launch.Launcher & [1] 23148 nohup.out的内容: 22 dec. 2010 18:20:21 org.apache.tuscany.sca

我在尝试使用nohup运行java代码时遇到问题:

[root@ /]# nohup opt/jdk1.6.0_22/bin/java -cp "lib/hibernate/*:lib/tuscany-sca-1.6/lib/*:lib/tuscany-sca-1.6/modules/*:./*" com.lab.launch.Launcher &

[1] 23148
nohup.out的内容:

22 dec. 2010 18:20:21 org.apache.tuscany.sca.node.impl.NodeImpl <init>
INFO: Creating node: SOAPExchange.composite
22 dec. 2010 18:20:22 org.apache.tuscany.sca.node.impl.NodeImpl configureNode
INFO: Loading contribution: file:/xf_exchange.jar
22 dec. 2010 18:20:23 org.apache.tuscany.sca.node.impl.NodeImpl start
INFO: Starting node: SOAPExchange.composite
22 dec. 2010 18:20:32 org.apache.tuscany.sca.http.jetty.JettyServer addServletMapping
INFO: Added Servlet mapping: http://ns200534.ovh.net:8094/SOAPExchange
Exception in thread "main" java.io.IOException: Bad file descriptor
    at java.io.FileInputStream.readBytes(Native Method)
    at java.io.FileInputStream.read(FileInputStream.java:199)
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
    at java.io.BufferedInputStream.read(BufferedInputStream.java:237)
    at com.xavier.launch.Launcher.main(Launcher.java:24)
Exception in thread "Thread-1" java.lang.IllegalStateException: Shutdown in progress
    at java.lang.ApplicationShutdownHooks.remove(ApplicationShutdownHooks.java:55)
    at java.lang.Runtime.removeShutdownHook(Runtime.java:220)
    at org.apache.tuscany.sca.binding.ws.axis2.TuscanyListenerManager.stop(TuscanyListenerManager.java:87)
    at org.apache.tuscany.sca.binding.ws.axis2.TuscanyListenerManager$ListenerManagerShutdownThread.run(TuscanyListenerManager.java:100)
java.lang.IllegalStateException: Shutdown in progress
    at java.lang.ApplicationShutdownHooks.remove(ApplicationShutdownHooks.java:55)
    at java.lang.Runtime.removeShutdownHook(Runtime.java:220)
    at org.apache.tuscany.sca.binding.ws.axis2.TuscanyListenerManager.stop(TuscanyListenerManager.java:87)
    at org.apache.axis2.context.ConfigurationContext.terminate(ConfigurationContext.java:744)
    at org.apache.axis2.transport.http.AxisServlet.destroy(AxisServlet.java:465)
    at org.apache.tuscany.sca.binding.ws.axis2.Axis2ServiceServlet.destroy(Axis2ServiceServlet.java:295)
    at org.mortbay.jetty.servlet.ServletHolder.destroyInstance(ServletHolder.java:315)
    at org.mortbay.jetty.servlet.ServletHolder.doStop(ServletHolder.java:286)
    at org.mortbay.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:65)
    at org.mortbay.jetty.servlet.ServletHandler.doStop(ServletHandler.java:170)
    at org.mortbay.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:65)
    at org.mortbay.jetty.handler.HandlerWrapper.doStop(HandlerWrapper.java:129)
    at org.mortbay.jetty.servlet.SessionHandler.doStop(SessionHandler.java:124)
    at org.mortbay.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:65)
    at org.mortbay.jetty.handler.HandlerWrapper.doStop(HandlerWrapper.java:129)
    at org.mortbay.jetty.handler.ContextHandler.doStop(ContextHandler.java:566)
    at org.mortbay.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:65)
    at org.mortbay.jetty.handler.HandlerWrapper.doStop(HandlerWrapper.java:129)
    at org.mortbay.jetty.Server.doStop(Server.java:281)
    at org.mortbay.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:65)
    at org.mortbay.jetty.Server$ShutdownHookThread.run(Server.java:559)
2010年12月22日18:20:21 org.apache.tuscany.sca.node.impl.NodeImpl
信息:正在创建节点:SOAPExchange.composite
2010年12月22日18:20:22 org.apache.tuscany.sca.node.impl.NodeImpl配置节点
信息:加载贡献:文件:/xf_exchange.jar
2010年12月22日18:20:23 org.apache.tuscany.sca.node.impl.NodeImpl启动
信息:起始节点:SOAPExchange.composite
2010年12月22日18:20:32 org.apache.tuscany.sca.http.jetty.JettyServer addServletMapping
信息:添加了Servlet映射:http://ns200534.ovh.net:8094/SOAPExchange
线程“main”java.io.IOException中的异常:错误的文件描述符
位于java.io.FileInputStream.readBytes(本机方法)
在java.io.FileInputStream.read(FileInputStream.java:199)中
在java.io.BufferedInputStream.fill处(BufferedInputStream.java:218)
在java.io.BufferedInputStream.read处(BufferedInputStream.java:237)
位于com.xavier.launch.Launcher.main(Launcher.java:24)
线程“thread-1”java.lang.IllegalStateException中的异常:正在关闭
位于java.lang.ApplicationShutdownHooks.remove(ApplicationShutdownHooks.java:55)
在java.lang.Runtime.removeShutdownHook(Runtime.java:220)中
位于org.apache.tuscany.sca.binding.ws.axis2.tuscanylistenermager.stop(tuscanylistenermager.java:87)
位于org.apache.tuscany.sca.binding.ws.axis2.TuscanyListenerManager$ListenerManagerShutdownThread.run(TuscanyListenerManager.java:100)
java.lang.IllegalStateException:正在关闭
位于java.lang.ApplicationShutdownHooks.remove(ApplicationShutdownHooks.java:55)
在java.lang.Runtime.removeShutdownHook(Runtime.java:220)中
位于org.apache.tuscany.sca.binding.ws.axis2.tuscanylistenermager.stop(tuscanylistenermager.java:87)
位于org.apache.axis2.context.ConfigurationContext.terminate(ConfigurationContext.java:744)
位于org.apache.axis2.transport.http.AxisServlet.destroy(AxisServlet.java:465)
位于org.apache.tuscany.sca.binding.ws.axis2.Axis2ServiceServlet.destroy(Axis2ServiceServlet.java:295)
位于org.mortbay.jetty.servlet.ServletHolder.destroyInstance(ServletHolder.java:315)
位于org.mortbay.jetty.servlet.ServletHolder.doStop(ServletHolder.java:286)
位于org.mortbay.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:65)
位于org.mortbay.jetty.servlet.ServletHandler.doStop(ServletHandler.java:170)
位于org.mortbay.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:65)
位于org.mortbay.jetty.handler.HandlerWrapper.doStop(HandlerWrapper.java:129)
位于org.mortbay.jetty.servlet.SessionHandler.doStop(SessionHandler.java:124)
位于org.mortbay.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:65)
位于org.mortbay.jetty.handler.HandlerWrapper.doStop(HandlerWrapper.java:129)
位于org.mortbay.jetty.handler.ContextHandler.doStop(ContextHandler.java:566)
位于org.mortbay.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:65)
位于org.mortbay.jetty.handler.HandlerWrapper.doStop(HandlerWrapper.java:129)
位于org.mortbay.jetty.Server.doStop(Server.java:281)
位于org.mortbay.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:65)
位于org.mortbay.jetty.Server$shutdownhookshread.run(Server.java:559)
谢谢你的帮助

Exception in thread "main" java.io.IOException: Bad file descriptor
    at java.io.FileInputStream.readBytes(Native Method)
    at java.io.FileInputStream.read(FileInputStream.java:199)
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
    at java.io.BufferedInputStream.read(BufferedInputStream.java:237)
    at com.xavier.launch.Launcher.main(Launcher.java:24)

看起来您的应用程序(或其参数)中有一个bug,我不确定它是否与
nohup
相关。它试图读取的文件是什么?

我们通常执行
nohup$javastuff>$LOGFILE&
。试试看。