Java 使用Jakarta Commons守护程序重新加载配置

Java 使用Jakarta Commons守护程序重新加载配置,java,apache-commons-daemon,Java,Apache Commons Daemon,当SIGHUP信号发送到jsvc进程时,是否可以让我的Java应用程序执行操作(重新加载配置)?如果没有-我的其他选项是什么,可以在不停止进程的情况下使用此库重新加载配置?我查看了文档,但在这个问题上没有发现那么清楚 注意:我不需要跨平台处理信号。我只想知道Jakarta Commons Daemon在与基于UNIX的平台一起使用时在配置重新加载方面提供了什么。Java没有跨平台的方式来处理信号。您最好打开一个套接字,等待输入。使用netcat或小型Java程序连接到套接字。在内部,接受连接,重

SIGHUP
信号发送到
jsvc
进程时,是否可以让我的Java应用程序执行操作(重新加载配置)?如果没有-我的其他选项是什么,可以在不停止进程的情况下使用此库重新加载配置?我查看了文档,但在这个问题上没有发现那么清楚


注意:我不需要跨平台处理信号。我只想知道Jakarta Commons Daemon在与基于UNIX的平台一起使用时在配置重新加载方面提供了什么。

Java没有跨平台的方式来处理信号。您最好打开一个
套接字
,等待输入。使用
netcat
或小型Java程序连接到套接字。在内部,接受连接,重新加载并关闭连接。你甚至不需要来回发送数据

[编辑]雅加达公用程序守护程序的C部分似乎不支持处理信号。请参见如何在JNI库中实现您自己的信号处理程序。它是为Java1.3编写的,但对Java5和Java6仍然有效


[EDIT2]如果可移植性不是问题,您可以尝试使用未记录且不受支持的类
sun.misc.Signal
。看见请注意,它是不受支持的、没有文档记录的等等,而且API在过去五年中没有改变。

Java没有跨平台的方式来处理信号。您最好打开一个
套接字
,等待输入。使用
netcat
或小型Java程序连接到套接字。在内部,接受连接,重新加载并关闭连接。你甚至不需要来回发送数据

[编辑]雅加达公用程序守护程序的C部分似乎不支持处理信号。请参见如何在JNI库中实现您自己的信号处理程序。它是为Java1.3编写的,但对Java5和Java6仍然有效


[EDIT2]如果可移植性不是问题,您可以尝试使用未记录且不受支持的类
sun.misc.Signal
。看见请注意,它是不受支持的、未记录的等等,而且API在过去五年中没有改变。

Hi,这不是我的问题。我不需要跨平台的方式来处理信号。我只对雅加达公地守护进程如何实现这一点感兴趣。我理解。我的回答是:JCD对您的情况没有帮助,Java虚拟机也没有提供任何其他选项。嗨,这不是我的问题。我不需要跨平台的方式来处理信号。我只对雅加达公地守护进程如何实现这一点感兴趣。我理解。我的答案是:JCD对您的情况没有帮助,Java VM也不提供任何其他选项。