InstallAnywhere

随着开发系统的加大,对于程序的部署的要求就越来越高了.

首先从导入的程序开始吧,以前对于程序的导入都是使用cmd下直接运行,把参数加在后面.到后来方法稍微有所改进,写成了.bat的脚本,对于参数,每次去修改一下脚本.但是这二种对于修改的要求都是很高的,一不小心,就会导致错误,所以,一般这种事情都是亲自去做.后来开始研究RCP,开始使用SWT/JFACE来写程序,对于很小的导入程序,一般都会花上一点时间来写一个界面来运行,这样,参数只能够去选择,可以避免因为不小心改错了而导致程序运行错误,对于SWING的程序,为了方便携带,一般都会使用FATJAR打包成一个JAR文件,这样既方便,又可以确保不会因为少拷贝了某个文件而导致程序无法运行.

随着业务的复杂度,一些程序可能要到客户的机器上去运行,众所周知,以上无论是哪种方式,都要依赖于对于客户的机器上装JDK/JRE,比较麻烦.

后来发展到使用exe4j来打包,这样就可以把所有的,包括JRE的运行环境一起打包进去.而留给客户的也只是一个EXE文件,相对来说会比较好看一点.

对于大型项目来说,就不够了,如我们要将TOMCAT或者是JBOSS打包进去,所以相中了InstallAnywhere.

首先试着打包一个安装程序,想先规范一下开发人员的开发机上的环境,如jdk的版本,tomcat的版本,eclipse的版本,先所这三个打包成一个安装文件,一安装就可以进行开发,这样也可以提高新装机器的速度.

在打包过程中出现了问题,因为eclipse比较大,我选用了3.4的版本,在打包的时候过了半小时没有反应,只有强制关闭了,在进程中关闭的时候,发现有javaw.exe的进程,首先想到的是不是java内存溢出了,打开安装的目录看,发现了console.txt文件,看一下日期,再看一下内容,果然里面有出现了outOfMemory,这种问题在运行Java程序时经常出现,尝试修改一下\Macrovision\InstallAnywhere 7.1 Enterprise\InstallAnywhere.lax文件:

 

#   LAX.NL.JAVA.OPTION.JAVA.HEAP.SIZE.INITIAL
#   -----------------------------------------
#   the initial heap size for the Java VM

lax.nl.java.option.java.heap.size.initial=25165824


#   LAX.NL.JAVA.OPTION.JAVA.HEAP.SIZE.MAX
#   -------------------------------------
#   the maximum heap size for the Java VM

lax.nl.java.option.java.heap.size.max=134217728

在数值后面加了一个0,修改后

#   LAX.NL.JAVA.OPTION.JAVA.HEAP.SIZE.INITIAL
#   -----------------------------------------
#   the initial heap size for the Java VM

lax.nl.java.option.java.heap.size.initial=251658240


#   LAX.NL.JAVA.OPTION.JAVA.HEAP.SIZE.MAX
#   -------------------------------------
#   the maximum heap size for the Java VM

lax.nl.java.option.java.heap.size.max=1342177280

再启动,果然启动速度快了很多,也可以正常打包了.

 

 

你可能感兴趣的:(java,eclipse,jdk,tomcat,swing)