代码之家  ›  专栏  ›  技术社区  ›  mcdon

Java Windows服务与Procrun,StestFrand问题

  •  2
  • mcdon  · 技术社区  · 16 年前

    我的Java类包含以下方法:

    public static void main(string[]argv)//启动服务

    public static void stop()//停止服务

    我使用的是ProcRun From Apache Commons Daemon 将Java类设置为Windows服务。我在尝试停止服务时出错“[618 javajni.c][error]静态方法“void main(string[])”(在类com/caphyon/service/javaservice中找不到)。问题是,当服务关闭时,我试图调用Stop方法,但它似乎用“void main(string[])”重写了StopMethod。以下是设置服务时使用的停止和启动参数:

    prunsrv.exe//us//javaservice--startclass=com.caphyon.service.javaservice--startmode=jvm--startpath=“c:\javaservice”

    prunsrv.exe//us//javaservice--stopclass=com.caphyon.service.javaservice--stopmode=jvm--stopath=“c:\javaservice”-stopmethod=“void stop()”

    当关闭服务时,如何设置stopmethod prunsrv将调用?

    1 回复  |  直到 16 年前
        1
  •  3
  •   Rob Heiser    16 年前

    您不应该将返回类型(即“void”)或parens放在--stopmethod参数的值中。因此,命令应该是:

    prunsrv.exe //US//JavaService --StopClass=com.caphyon.service.JavaService --StopMode=jvm --StopPath="C:\JavaService" --StopMethod="stop"
    
    推荐文章