我的Java类包含以下方法:
public static void main(String [] argv)//启动服务
public static void stop()//停止服务
我正在使用Apache Commons Daemon中的Procrun将Java类设置为Windows服务。我尝试停止服务时收到错误消息“ [618 javajni.c] [错误]找不到类com / caphyon / service / JavaService中的静态方法'void main(String [])'”。问题是我正在尝试在服务关闭时调用stop方法,但是它似乎用'void main(String [])'覆盖了StopMethod。以下是设置服务时使用的停止和启动参数:
prunsrv.exe //美国// JavaService --StartClass = com.caphyon.service.JavaService --StartMode = jvm --StartPath =“ C:\ JavaService”
prunsrv.exe //美国// JavaService --StopClass = com.caphyon.service.JavaService --StopMode = jvm --StopPath =“ C:\ JavaService” --StopMethod =“ void stop()”
如何设置关闭服务时将调用的StopMethod prunsrv?
最佳答案
您不应将返回类型(即“ void”)或父级放在--Stop Method参数值中。因此,命令应为:
prunsrv.exe //US//JavaService --StopClass=com.caphyon.service.JavaService --StopMode=jvm --StopPath="C:\JavaService" --StopMethod="stop"