我们在本地开发web应用的时候,直接在IDE里面就可以完成jdk、容器、数据库的配置和集成。

但是如果当我们把应用程序交付给用户使用的时候,不可能把在客户端配置eclipse。

而且我遇到的这个情况是,十几个客户在不同的地方,客户可以接受BS模式的应用(因为本人不做CS应用多年,硬是说服客户接受BS)。

每个客户都是存在利益竞争关系的,所以不可能统一部署。最后我只能把JDK、Mysql、Tomcat、应用程序打包在一起,提供一个一键安装的功能,交付给各个客户。

那本篇就来介绍在widnows环境下,不使用任何第三方的打包工具的前提下,如何将JDK、Mysql、Tomcat、应用程序打包,并提供bat批处理文件来安装、卸载、启动、停止服务 的做法。

一、找到绿色免安装的JDK、mysql、tomcat,放到一个统一的目录下,比如D:/coss

这里有必要说说怎么找到绿色免安装的jdk、tomcat、mysql

1、什么是绿色的免安装的JDK?做这件事之前, 我一直不知道它是什么概念,更别说如何获取它。其实很简单,就是你已经安装好的JDK,比如:C:/program files/java/jdk1.6.8,你直接把这个文件夹C:/program files/java复制出来,那么你就得到了绿色的JDK。哈哈,简单不,把你取到的绿色jdk放到D:/coss,如上图

2、获取绿色的mysql,你可以到http://download.mysql.cn站点,获取一个noinstall版本的zip文件,解压缩到D:/coss,并将文件夹名称更改为mysql。这里需要特别说明一下的是,绿色的mysql在根目录下没有my.ini,这是它和安装版的一个重要区别,而且我们在后面的操作中需要手动构建这个文件,否则mysql不能运行。

3、绿色tomcat很容易获取,你可以到网上搜索,一片一片的,找到以后解压缩到D:/coss下,文件夹命名为tomcat

二、注册mysql、tomcat服务

1、我编辑了一个install.bat文件来完成java环境变量配置、注册mysql、tomcat为windows服务,详细参见附件的install.bat文件。还是说明一下吧,如下:

语句:reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v JAVA_HOME /t REG_EXPAND_SZ /d "%cd%\Java\jdk1.6.0_18" /f  的作用是完成JAVA_HOME环境变量的设置

语句:call ./tomcat/bin/service.bat install tomcat  的作用是将tomcat注册为tomcat服务,这样的好处是以后启动tomcat就再也不用看那个黑色的命令行窗口了

语句:call %cd%\mysql\bin\mysqld-nt -install mysql  的作用是将mysql注册为mysql服务

语句:call dbsetting.bat  的作用是给绿色的mysql添加my.ini文件

2、同样,我们也需要提供一个卸载服务的批处理文件,详细参见附件的uninstall.bat文件

3、另外,很重要的一点,就是绿色版的mysql没有my.ini,我们在install.bat里面调用了dbsetting.bat,dbsetting.bat将当前目录下的db.ini进行修改,然后剪切到了mysql路径下并重新命名为my.ini,这样就保证了mysql能正常启动

4、此外,还提供了启动.bat、重启.bat、停止.bat,这些都是针对服务启停用的,因为当使用install安装完成之后,服务都还没有启动,需要这几个批处理文件来操作服务的启停。

5、应用程序可以放到webapps下或者D:/coss目录下,后者的话需要你配置一下tomcat/conf下的server.xml,在<Host>节点下添加配置,比如:

<Context docBase="D:\eclipse workspace\dsd workspace\coss\WebContent" path="/coss" reloadable="true"/>

三、一些注意事项:

操作过程中,大家可能遇到几个问题,我这里强调一下:

1、统一目录,我这里是D:/coss,大家可以随便定义路径,但一定要注意,路径中不要有中文,不要有空格

否则出现的错误词不达意,很难定位

2、mysql在启停过程中可能出现1067错误,这时请检查你的my.ini里面的参数、路径配置的对不对

3、配置了环境变量之后,有时可能不生效,需要重启一下电脑,或者电脑--右键属性--高级--环境变量,双击选中你的环境变量点确定才能生效

附件包含了全部的批处理文件,大家在实际操作中遇到问题请和我沟通。共勉之~~

打包mysql、tomcat、jdk为一个软件的更多相关文章

  1. 搭建阿里云 centos mysql tomcat jdk

    [toc] 阿里云使用centos 登录 http://www.aliyun.com/ 点击登录 进入控制 https://home.console.aliyun.com/ 云服务器 运行中 把ip输 ...

  2. linux上安装mysql,tomcat,jdk

    Linux 上安装 1 安装jdk 检测是否安装了jdk 运行 java –version 若有 需要将其卸载 a)         查看安装哪些jdk rmp –qa |grep java b)   ...

  3. [项目部署] CentOs7 安装 MySQL/Tomcat/JDK 笔记

    0.安装 MySQL cd /usr/local/ # 新增yum源 rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-.no ...

  4. tomcat+jdk+mysql

    转自 http://www.cnblogs.com/liulinghua90/ ,写的很详细,转来共享私藏 按照下面的步骤一步一步来搭建tomcat+jdk+mysql环境.   [Linux环境]- ...

  5. linux系统下安装jdk,mysql,tomcat 和redis 和jedis入门案例

    Day47笔记Linux+redis入门 Day47   知识讲解:Jedis 1.Linux上jdk,mysql,tomcat安装(看着文档安装) 准备工作: 因为JDK,TOMCAT,MYSQL的 ...

  6. Linux 下tomcat+jdk+mysql安装

    JDK 1.用xftp把 jdk1.8.0_65上传到local下 给他赋予最高权限 1)切换到顶级目录    cd ~ 2)然后切换到上级目录 cd .. 3)切换到local路径下  cd /us ...

  7. CentOS 5.5 Nginx+JDK+MySQL+Tomcat(jsp)成功安装案例

    在CentOS 5.5中安装Nginx+jdk+mysql+tomcat是非常容易的.只需yum安装环境包和nginx.解压安装jdk和tomcat.配置profile文件.server.xml和ng ...

  8. Linux 安装jdk+mysql+tomcat

    参考: 安装 jdk+mysql+tomcat   https://www.w3h5.com/post/65.html 安装 mysql  https://blog.csdn.net/qq_23123 ...

  9. 部署测试环境(ubuntu+mysql+tomcat)

    背景:入职新公司,广州这边没有测试开发环境,需要自己搭建一个:要求ubuntu+mysql+tomcat有具体版本要求:   2015/4/13 下载Ubuntu12.04 http://mirror ...

随机推荐

  1. JavaScript之对象学习

    对象是一种非常重要的数据类型,他是一种自包含的数据集合,包含在对象里面的数据可以通过属性和方法两种形式来访问; 1.属性是隶属于某个特定对象的变量; 2.方法是只有某个特定对象才能调用的函数; 而对象 ...

  2. 【图像配准】基于灰度的模板匹配算法(一):MAD、SAD、SSD、MSD、NCC、SSDA、SATD算法

    简介: 本文主要介绍几种基于灰度的图像匹配算法:平均绝对差算法(MAD).绝对误差和算法(SAD).误差平方和算法(SSD).平均误差平方和算法(MSD).归一化积相关算法(NCC).序贯相似性检测算 ...

  3. 彻底解决 LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏

    最近我的VS2010不知道怎么回事,平时用的好好的,近期竟然出现了所谓的 LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏 头痛万分,查了各种资料一 ...

  4. 在python中编写socket服务端模块(二):使用poll或epoll

    在linux上编写socket服务端程序一般可以用select.poll.epoll三种方式,本文主要介绍使用poll和epoll编写socket服务端模块. 使用poll方式的服务器端程序代码: i ...

  5. 繁简转换OpenCC,autogb 和 autob5,iconv,python的jianfan包

    OpenCC OpenCC 是跨平台.多语言的开放中文转换库,除了基本的简繁转换功能外,用户还可以选择对不同用词习惯和异体字的处理方式. OpenCC 还提供方便的网页转换界面. OpenOffice ...

  6. 利用BP神经网络预测水道浅滩演变

    论文 <基于现代技术的河道浅滩演变研究> 利用BP神经网络来预测浅滩演变 BP输出因子:浅滩的年平均淤积厚度以及浅滩上最小水深,是反映浅滩变化的两个基本指标,是确定浅滩航道尺度能否满足航行 ...

  7. 解决phpmyadmin-1800秒超时链接失效问题

    在phpmyadmin的配置文件里 \usr\share\phpMyAdmin\libraries\config.default.php 修改 $cfg[‘LoginCookieValidity’] ...

  8. 解决Agent admitted failure to sign using the kye with ssh

    之前如果建立 ssh 连接,只要將公匙复制到~/.ssh/authorized_keys就可以直接登录而不需要建立密碼. 如果在使用时候出现如下信息: Agent admitted failure t ...

  9. 从Android中Activity之间的通信说开来[转]

    http://www.cnblogs.com/virusswb/archive/2011/08/02/2124824.html 引言 最近两个星期在研究android的应用开发,学习了android应 ...

  10. 练习笔记:net,JqueryUI实现自动补全功能

    1.首先建立个空的Web项目 2.将下载好的JqueryUI文件保存到JS文件加下 3.引入JS文件 <link href="JS/css/ui-lightness/jquery-ui ...