项目中有一个java应用程序,交付后用户要求要把这个程序做成后台服务程序,即:系统启动后该程序可以自动启动,并且在前台不要出现运行窗口,维护人员只要在“服务管理”(Windows)中选择启动或停止即可.
解决办法如下:
Linux
在Linux中注册后台服务程序相对容易,只需编辑/etc/init.d/boot.local文件,在boot.local文件里加上下面这句脚本:

/iapappserver/MessageServer2.1/run.sh

其中run.sh是java应用的运行脚本
Windows
在Windows下的情况较为复杂,需要使用Windows提供的两个工具:instsrv.exe(下载)和Srvany.exe(下载).
instsrv: 这个工具是把win32程序变成系统服务。
基本用法:

instsrv [服务名] [应用程序绝对路径] (增加服务)
instsrv [服务名] REMOVE (删除服务)

但是并不是所有程序都适合做系统服务的,注册成系统服务后就是无法启动的,这时就需要用到srvany.

srvany: 这个工具就是用来解决上面的工具中的问题,你注册的时候把它当作你要的服务,在用它来启动你的应用程序。
基本用法:

instsrv [服务名] [srvany的绝对路径]

具体步骤如下:
1.       注册服务: path\instsrv 服务名 path\srvany.exe
2.       regedit打开注册表
3.       进入HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\服务名
4.       右键-新建-项 填入 Parameters
5.       打开Parameters,右键-新建-字符串值 Application
6.       双击Application 填入 应用程序的绝对路径,如: D:\workspace\app\main.exe
7.       右键-新建-字符串值AppDirectory
8.       双击AppDirectory 填入 应用程序的工作目录,如: D:\workspace\app\
9.       启动服务。

Parameters里还可以添加很多键值:
AppDirectory 工作目录
AppParameters 你的应用程序的参数。
AppEnvironment 运行环境变量。

最新文章

  1. dll学习
  2. python+eclipse环境搭建
  3. 数据源DBCP一二
  4. rem详解及使用方法
  5. JS中定义类的方法
  6. 1、网页制作Dreamweaver(界面、基本操作、锚点、表格)
  7. hdu 4455 动态规划
  8. RS232转RS485电路图分析
  9. tlplayer,wzplayer所有平台通用加密测试视频
  10. 【Java】Checked、Unchecked Exception
  11. div+css3列布局,带详尽注释
  12. C文件函数总结
  13. Android ToggleButton使用介绍
  14. JS 数组扩展函数--求起始项到终止项和
  15. C# 让textbox 只能输入数字的方法
  16. php中soap应用
  17. UEditor编辑器第一次赋值失败的解决方法
  18. css3图片模糊过滤特效
  19. Shiro的FormAuthenticationFilter登陆成功不跳转
  20. word之个人设置

热门文章

  1. Solve Longest Path Problem in linear time
  2. django ORM中update_or_create功能,如果只要匹配某一特定字段呢
  3. Emily姨妈家的猫
  4. ANDROID_MARS学习笔记_S03_007_GoogleMap1
  5. 被忽视的eMMC——A1 SD Bench闪存测试
  6. 最简单的CRC32源码-逐BYTE法
  7. 开发的时候,一定要及时控制CPU使用率以及使用内存大小等三个问题(一个星期检查一次)
  8. Android用户界面UI组件--AdapterView及其子类(四) GridView
  9. Linux下压缩某个文件夹(文件夹打包)
  10. C#实例:5个.net经典例子(窗体与界面设计)