`
xiaofengtoo
  • 浏览: 484685 次
  • 性别: Icon_minigender_1
  • 来自: xiamen
社区版块
存档分类
最新评论

J2EE 打包 一键安装 之 灵活路径

    博客分类:
  • java
阅读更多

上一篇 写了 J2EE 打包 一键安装 固定路径,此文说下灵活路径,相关bat文件都需要处理。

 

一直想mysql如果可以灵活安装路径,而且my.ini文件可以自动处理,看过tomcat 的安装tomcat安装由于有环境变量,所以tomcat的安装不存在难点,但是整理我们要处理的东西很多。

想要一次性安装所有,绝非容易的,但也不是做不到。

先说下构思:

      1:为按照的web项目添加一个环境变量,由于windows的环境变量其实是注册表。如:WEB_HOME

      2:在原有的tomcat.bat,mysql.bat,install.bat文件中,先获取web的环境变量WEB_HOME,set一个变量值,如下:

    

rem 读取WEB_HOME的植
for /f "skip=4 tokens=1,2 delims=:" %%a in ('reg query "HKLM\system\controlset001\control\session manager\environment" /v WEB_HOME') do ( 
  set "a=%%a" 
  set "b=%%b" 
) 
set "webPath=%a:~-1%:%b:\=\%"
set homePath=%webPath%

set p=%homePath:~0,1%

 homePath 即使我们按照产品的目录的路径 ,P为盘符

 

    3:  添加一个修改my.ini的bat的文件:

       保存为myren.bat

         

@ECHO OFF
color 01a
rem 不能用绿色的mysql
@ECHO  数据库安装进行中,请不要中断 ......

rem 读取WEB_HOME的值
for /f "skip=4 tokens=1,2 delims=:" %%a in ('reg query "HKLM\system\controlset001\control\session manager\environment" /v WEB_HOME') do ( 
  set "a=%%a" 
  set "b=%%b" 
) 
set "hqPath=%a:~-1%:%b:\=\%"
set homePath=%hqPath%

rem 单个字符替换
set homePath=%homePath:\=/%
echo %homePath%

set p=%homePath:~0,1%
@echo %p%
%p%:
set mysqlPath=%WEB_HOME%\mysql5.1

cd %mysqlPath%
ren my.ini=myII.ini

    echo 替换字符:
    call :replace  myII.ini D:/mysql5.1/ %homePath%/
    pause>nul
goto :eof

:replace
    setlocal ENABLEDELAYEDEXPANSION
    for /f "tokens=1* delims=" %%i in (%1) do ( 
 	set var=%%i & echo !var:%2=%3! >>myIII.ini
)
    endlocal

ren myIII.ini=my.ini
@ECHO 恭喜你 处理完成
goto :eof

pause

  

   上面此代码: call :replace  myII.ini D:/mysql5.1/ %homePath%/
   注意:D:/mysql5.1 是我原来安装的路径,也就是说my.ini里面指向的路径,这个大家根据实际情况进行修改。

 

  4:修改install文件,install其实是调用其他的bat文件,此处顺序:

       4.1:call myren.bat

       4.2:  call mysql.bat

       4.3:  call tomcat.bat

       4.4:  call 设置手动(自动)启动

 

   5:打包,利用工具打包:

        注意项:

       5.1 对话框常规项中,固定路径不打钩

       5.2 在注册表项中,添加:

            主键:HEKY_LOCAL_MACHINE

            子建:SYSTEM\ControlSet001\Control\Session Manager\Environment

            名称:WEB_HOME

            类型:REG_SZ

            数据:%InstallPath%

 

        此动作是第一步骤的实现。

            

 

分享到:
评论
3 楼 xiaofengtoo 2010-04-08  
liyuandong 写道

你好,我按你的方法做了,但运行myren.bat后,说系统找不到指定的注册表和值...
方便的话,发一份参考参考..谢谢...

找不到指定的注册表和值的话,应该是在安装后运行的情况下,请查看下 是否处理了 我上术所说的第5步,至于参考就不发了 ,太多文件了
2 楼 liyuandong 2010-04-02  
我的邮箱:liyuandong1111@126.com
1 楼 liyuandong 2010-04-02  

你好,我按你的方法做了,但运行myren.bat后,说系统找不到指定的注册表和值...
方便的话,发一份参考参考..谢谢...

相关推荐

Global site tag (gtag.js) - Google Analytics