统计排行 帮助
  • 5633阅读
  • 4回复

成功使用JavaService将语盒服务端安装为WINDOWS服务

楼层直达
qsg
级别: 触摸盒子
— 本帖被 yuchting 执行取消加亮操作(2011-11-03) —
为什么要将语盒服务端安装成为Windows服务?

    因为这样不用登录也可以让语盒服务端自动运行,再也不怕服务器重启了。

步骤:

1、安装并调试好你的语盒服务端,也就是说运行runSvr.bat能够成功提供语盒服务。

2、安装JavaService,其实就是将附后提供的JavaService.exe解压出来,注意不要有中文路径。我将它解压到语盒服务端的目

录里。

3、如果你的语盒正在运行,把它停掉。

4、编辑附后提供的 "安装(不能有中文路径)yuchberry为Windows服务.bat" ,将JRE_HOME设置成你电脑里的JRE路径;

JSBINDIR设置成你电脑里JavaService.exe的路径,如果你将它解压到语盒服务端的目录里,JSBINDIR就不用设置了。注意路径

里不能有中文,不要多加空格。
   同样编辑"停止并卸载yuchberry服务的批处理文件,其中service 名称必须与上面注册的service名称一致.bat",确保

JSBINDIR正确。

5、将两个bat文件复制到语盒服务端的目录里,运行安装的那个。正常的话,服务会安装成功并自动运行,不正常的话,请检

查路径和bat里的路径设置,还不行的话。。。。再检查一遍吧。


声明:

   两个bat文件是我从网上找来并稍加改动,不是我写的。如果您认出是您的原创,没错,就是您的原创!太感谢您了!

   还要在这里感谢语盒开发团队,太感谢您了!

---------------------------------------上传附件失败的分隔线-----------------------------------------
上传附件失败,将bat文件内容贴这儿吧。javaservice2.0.10官方下载:   forge.ow2.org/project/showfiles.php?group_id=137&release_id=1560

安装(不能有中文路径)yuchberry为Windows服务.bat

@echo off  

rem 修改控制台颜色  
color 1d  
  
rem * 使用JavaService将yuchberry安装为Windows服务的脚本  
rem *  
rem * JavaService - Windows NT Service Daemon for Java applications  
rem * Copyright (C) 2006 Multiplan Consultants Ltd. LGPL Licensing applies  
rem * Information about the JavaService software is available at the ObjectWeb  
rem * web site. Refer to http://javaservice.objectweb.org for more details.  
  
rem 开始批处理文件中环境改动的本地化操作,在使用endlocal后环境将恢复到原先的内容  
SETLOCAL  
  
rem 设置环境变量,指向当前路径  
SET BASE_PATH=%CD%
  
rem 设置Java path: jre_home  
SET JRE_HOME=C:\Program Files\Java\jre6
  
rem 判断JRE_HOME是否正确  
if "%JRE_HOME%" == "" goto no_java  
if not exist "%JRE_HOME%\bin\java.exe" goto no_java  
  
rem 设置jvm内存分配情况  
set JVM_MEMORY=-Xms30m -Xmx256m  

rem 设置jvmdll使用哪一种模式  
SET jvmdll=%JRE_HOME%\bin\client\jvm.dll
if not exist "%jvmdll%" SET jvmdll=%JRE_HOME%\bin\hotspot\jvm.dll
if not exist "%jvmdll%" goto no_java  

  
rem 设置JavaService路径  
rem set JSBINDIR=C:\Program Files\Java\JavaService-2.0.10
set JSBINDIR=%BASE_PATH%
set JSEXE=%JSBINDIR%\JavaService.exe
  
rem 判断jar是否正确  
SET acctjar="%BASE_PATH%\svr.jar"
if not exist "%acctjar%" goto no_peer  
  
@echo . Using following version of JavaService executable:  
@echo .  
"%JSEXE%" -version  
@echo .  
  
rem parameters and files seem ok, go ahead with the service installation  
@echo .  
  
rem 处理该批处理的输入参数,后台服务启动模式:自动  
SET svcmode=  
if "%1" == "-manual" SET svcmode=-manual  
if "%1" == "-auto" SET svcmode=-auto  
  
  
rem 设置JAVA_OPTS  
set JAVA_OPTS=%JAVA_OPTS% -Djava.class.path="%BASE_PATH%\svr.jar"  
set JAVA_OPTS=%JAVA_OPTS% %JVM_MEMORY%  
  
rem 设置startstop  
SET START_STOP=-start com.yuchting.yuchberry.server.frame.mainFrame
  
  
rem 设置Log文件路径  
set OUT_ERR=-out "%BASE_PATH%\service_out.log" -err "%BASE_PATH%\service_err.log"  
  
rem 设置desp  
set DESP=-description "Yuchberry Service"  
  
rem 设置执行命令行  
set runcmd="%JSEXE%" -install YuchberryService  
set runcmd=%runcmd% "%jvmdll%"  
set runcmd=%runcmd% %JAVA_OPTS%  
set runcmd=%runcmd% %START_STOP%  
rem set runcmd=%runcmd% %OUT_ERR%  
set runcmd=%runcmd% -current  
set runcmd=%runcmd% "%BASE_PATH%"  
set runcmd=%runcmd% %svcmode%  
rem set runcmd=%runcmd% -overwrite  
rem set runcmd=%runcmd% -startup 6  
set runcmd=%runcmd% %DESP%  
echo %runcmd%  

rem 执行安装命令  
%runcmd%  
  
rem 启动服务  
net start YuchberryService  
  
if ERRORLEVEL 1 goto js_error  
  
goto end  
  
:no_java  
@echo . 没有Java运行环境,安装脚本不能运行  
goto error_exit  
  
:no_peer  
@echo . 启动文件svr.jar不存在,安装脚本不能运行  
goto error_exit  
  
  
:no_jsexe  
@echo . 可执行文件JavaService.exe 不存在,安装脚本不能运行  
goto error_exit  
  
  
:js_error  
@echo . YuchberryService在安装为服务的过程中发生了错误,请检查相关日志文件  
goto error_exit  
  
:error_exit  
  
@echo .  
@echo . 安装失败,不能将 yuchberry安装为Windows服务  
@echo .  
@echo . 命令格式:  
@echo .  
@echo .  %~n0 [-auto / -manual] [-np]  
@echo .  
@echo . 其中:  
@echo .  -auto (默认) or -manual 参数说明了服务的启动模式:自动或者手动  
@echo .  -np 批处理命令执行完毕后不暂停  
@echo .  
@echo . 比如:  
@echo .  %~n0 -auto -np  
  
:end  
ENDLOCAL  
@echo .  
if "%2" NEQ "-np" @pause


停止并卸载yuchberry服务的批处理文件,其中service 名称必须与上面注册的service名称一致.bat.txt
@echo off  
  
rem 修改控制台颜色  
color 1d  
  
rem * 使用JavaService卸载YuchberryService服务的脚本  
rem *  
rem * JavaService - Windows NT Service Daemon for Java applications  
rem * Copyright (C) 2006 Multiplan Consultants Ltd. LGPL Licensing applies  
rem * Information about the JavaService software is available at the ObjectWeb  
rem * web site. Refer to http://javaservice.objectweb.org for more details.  
  
rem 开始批处理文件中环境改动的本地化操作,在使用endlocal后环境将恢复到原先的内容  
SETLOCAL  
  
rem 设置环境变量  
SET BASE_PATH=C:\Program Files\Java
  
rem 设置JavaService的路径  
rem set JSBINDIR=%BASE_PATH%\JavaService-2.0.10
set JSBINDIR=%CD%
set JSEXE=%JSBINDIR%\JavaService.exe
  
rem 卸载服务前先停止服务  
net stop YuchberryService  
  
rem 设置执行命令行  
set runcmd="%JSEXE%" -uninstall YuchberryService  
  
%runcmd%  
  
@echo .  
  
ENDLOCAL  
@echo .  
if "%2" NEQ "-np" @pause






BB8700
级别: 版主
只看该作者 沙发   发表于: 2011-11-25
支持了,经过测试可以使用,通过修改服务注册名称,可以实现多帐号同时使用。非常不错。
级别: 触摸盒子
只看该作者 板凳   发表于: 2011-12-05
按照说明运行提示yuchberry无法启动。求解。
级别: 触摸盒子
只看该作者 地板   发表于: 2012-01-08
按照LZ的方法,设置成功。  转为WINDOWS服务后,手机连接不上语盒服务器。卸载windows服务,单独运行,有能连接上。。。。这是为神马。。。
qsg
级别: 触摸盒子
只看该作者 4楼  发表于: 2013-07-12
其实用windows的计划任务就很好,“计算机启动时” 运行 runSvr_background.bat 即可。
BB8700
快速回复

限100 字节
如果您在写长篇帖子又不马上发表,建议存为草稿
 
认证码:
上一个 下一个