socket实现客户端与服务端通信(三)服务端升级
2015-07-06 17:12
477 查看
前面两篇已经能实现客户端控制服务端了,但是每次服务端都要启动程序也确实挺烦的,所以这篇就将把服务端打造成Windows服务,开机自动启动。因为是自己写的程序,没有广告,没有后门,内存占用极少,所以不用担心会降低计算机性能什么的。
要想做成windows的服务,首先把服务端打包生成XX.jar文件,然后需要用到Java Service Wrapper来将java程序做出windows服务。
1.到 官网 下载Java Service Wrapper,区别32跟64,根据自己计算机来。我下了3.5.25跟3.5.26都有时间限制,就是所谓的试用期限,后来在网上找了个3.5.9的32位的 ,需要的到这里下 下载
2.然后选择一个盘新建文件夹,名字随意,不用中文,比如:service。然后在service文件夹里面再创建bin,conf,logs,lib四个文件夹,并把打包的服务端jar包同样放到service目录下。
3.然后把刚才下的Java Service Wrapper解压出来,在里面的src\bin和src\conf(demo那个可以不用)目录里面的所以文件全部复制到你自己建的bin和conf目录下,并把.in后缀去掉,还有把跟src同级的bin目录下的wrapper.exe文件也复制到你的bin目录下。还有把解压出来的lib目录下的wrapper.jar和wrapper.dll复制到你的lib目录下,如果有第三方jar包也放这里。
4.配置wrapper.conf文件。
配置了JAVA_HOME的直接这样就可以了,没配置的就写java的安装路径
wrapper.java.command=%JAVA_HOME%/bin/java
jar包的路径,除了service根目录下的jar(就是自己打包的jar)和lib下的wrapper.jar以外,有多少jar就写多少引用,wrapper.java.classpath.1wrapper.java.classpath..2以此类推
# Java Classpath (include wrapper.jar) Add class path elements as
# needed starting from 1
wrapper.java.classpath.1=../lib/wrapper.jar
wrapper.java.classpath.2=../service.jar
你的java类的路径,我的是这样的,没有建包所以就一个类
# Application parameters. Add parameters as needed starting from 1
wrapper.app.parameter.1=Service
服务名称
# Name of the service
wrapper.name=ServiceForPC1
显示名称
# Display name of the service
wrapper.displayname=ServiceForPC2
描述
# Description of the service
wrapper.description=ServiceForPC3
到这里基本就配置完了。然后运行你的bin中的App.bat进行测试,如果正常进入监听状态则测试通过,可以点击InstallApp-NT.bat来安装服务,也可点击UninstallApp-NT.bat来卸载服务。
就这样吧,祝大家玩得开心。
附上我做好的服务端:点击打开链接,结合控制PC客户端 一起就可以实现了
要想做成windows的服务,首先把服务端打包生成XX.jar文件,然后需要用到Java Service Wrapper来将java程序做出windows服务。
1.到 官网 下载Java Service Wrapper,区别32跟64,根据自己计算机来。我下了3.5.25跟3.5.26都有时间限制,就是所谓的试用期限,后来在网上找了个3.5.9的32位的 ,需要的到这里下 下载
2.然后选择一个盘新建文件夹,名字随意,不用中文,比如:service。然后在service文件夹里面再创建bin,conf,logs,lib四个文件夹,并把打包的服务端jar包同样放到service目录下。
3.然后把刚才下的Java Service Wrapper解压出来,在里面的src\bin和src\conf(demo那个可以不用)目录里面的所以文件全部复制到你自己建的bin和conf目录下,并把.in后缀去掉,还有把跟src同级的bin目录下的wrapper.exe文件也复制到你的bin目录下。还有把解压出来的lib目录下的wrapper.jar和wrapper.dll复制到你的lib目录下,如果有第三方jar包也放这里。
4.配置wrapper.conf文件。
配置了JAVA_HOME的直接这样就可以了,没配置的就写java的安装路径
wrapper.java.command=%JAVA_HOME%/bin/java
jar包的路径,除了service根目录下的jar(就是自己打包的jar)和lib下的wrapper.jar以外,有多少jar就写多少引用,wrapper.java.classpath.1wrapper.java.classpath..2以此类推
# Java Classpath (include wrapper.jar) Add class path elements as
# needed starting from 1
wrapper.java.classpath.1=../lib/wrapper.jar
wrapper.java.classpath.2=../service.jar
你的java类的路径,我的是这样的,没有建包所以就一个类
# Application parameters. Add parameters as needed starting from 1
wrapper.app.parameter.1=Service
服务名称
# Name of the service
wrapper.name=ServiceForPC1
显示名称
# Display name of the service
wrapper.displayname=ServiceForPC2
描述
# Description of the service
wrapper.description=ServiceForPC3
到这里基本就配置完了。然后运行你的bin中的App.bat进行测试,如果正常进入监听状态则测试通过,可以点击InstallApp-NT.bat来安装服务,也可点击UninstallApp-NT.bat来卸载服务。
就这样吧,祝大家玩得开心。
附上我做好的服务端:点击打开链接,结合控制PC客户端 一起就可以实现了
相关文章推荐
- 递归二叉树遍历
- 管理后台-第一部分:Creating custom sections in Umbraco 7 - Part 1(翻译文档)
- linux 添加交换分区
- 编程经验
- static变量在Main函数之前执行
- Swift学习笔记系列——(3)集合类型
- netty中LengthFieldBasedFrameDecoder的使用
- 我们过去几年做对了哪些事
- 内连接和外连接
- C#高级编程三十五天----foreach和yield
- ASP.NET MVC与Sql Server建立连接
- 根据前序和中序构造二叉树-java版
- 93.计算字符串s中所包含t字符串的数目
- C++实现队列之链式存储结构
- 应用
- ESP8266学习笔记1:如何在安信可全功能测试板上实现ESP-01的编译下载和调试
- 黑马程序员——java基础---集合(第15天)
- GRE写作必备句型
- LinkIssue: Error 'LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or co
- Spark读取日志,统计每个service所用的平均时间