使用 Java Service Wrapper 将Java程序在树莓派上部署成系统服务 过程中碰到的坑。。。

最近有个需求,需要将Java的程序在树莓派上部署成服务,就准备使用Java service Wrapper。上网参考了一下别的文章,但是其中也碰到了不少的坑,特记录下来,希望能帮助到别的童鞋。。。
主要的过程可以参考这篇文档,我主要是记录一下这篇文章没有提到的问题
Java Service Wrapper 将Java程序部署成系统服务

  • Java Service Wrapper 版本的问题

    Java Service Wrapper 版本分三种,Professional,Standard,Community三个版本,前两个版本是收费的,第三个版本才是免费的。
    树莓派是32位系统,CPU的架构是armhf。

  • 第三方动态库的配置

    在Java开发的过程中,有时候会用到C提供的一些NATIVE接口,这个时候需要C的so动态库。这些动态库需要在wrapper.conf文件中进行配置

#Java Library Path (location of Wrapper.DLL or libwrapper.so)
这个段落中添加第三方so所在的文件夹

wrapper.java.library.path.1=…/lib
wrapper.java.library.path.2=…/src/olami_lib

其中path.1是wrapper自己的lib库的地址。自己的可以在下面继续添加。

  • 程序的入口

程序的入口需要配置成自己Java程序的主类
Java Main class,也就是程序入口
#该类需要实现WrapperListener 接口并保证WrapperManager 得到初始化
wrapper.java.mainclass=com.xxx.main

  • 程序不断重启
    Java服务配置好以后,会发现Java程序会不断的重启。这是因为wrapper会和JVM不断的通信,检查JVM是否或者。如果你的Java程序休眠了或者通信失败了,wrapper就会通知进程挂起,然后再试图重启Java程序。解决办法是在wrapper.conf文件中设置
    wrapper.ping.timeout=0
    wrapper.startup.timeout=0
    这两个值默认是30

参考:https://stackoverflow.com/questions/20718058/java-service-is-restarted-4-or-5-times

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值