想在windows下发布我的apex应用,准备打包成.msi文件,这样用户只需要一路next之后就能把oracle-xe, apex 4.0 和我的apex应用一起装上,一开始以为挺简单,后来发现得做不少的工作,现在说说我的思路。
.msi格式的文件是微软推荐的软件安装包格式,但是没有现成的工具来生成它,google之后,发现
wix这个工具比较给力
为啥这么说呢,首先它是免费的,不收钱,以前托管在sourceforge,后来被微软重视(office2007的安装包就是用它做的),现在打算挪到codeplex上面。另外这个工具使用xml文件描述安装文件和过程,可维护性和定制性要强于任何IDE类的自动生成工具,我可以把wix源文件和我的apex源文件一起check in到SVN里面,进行完全的版本控制,改起来非常方便。最后,这个工具的开发和维护非常活跃,社区响应也很积极,使用它不会有失去支持的风险。
![007.gif](/images/edit/face/007.gif)
接下来说说的的打算,毕竟apex应用只能在oracle里面运行,那么发布apex应用时,安装包也必须负责数据库的安装和apex平台的配置,大体流程如下:
- 调用oracle xe的安装包,先进行xe安装。
- 安装完成xe后,调用启动数据库脚本,这个脚本在xe安装后就自带了,调用它来启动数据库。
- 待数据库启动完成之后,安装apex4.0
- 待apex安装完成之后,部署我的应用的支持对象(schema,图片,js脚本等)
- 导入apex应用
- 安装完成。
后续:
在讲xe安装文件打包到msi文件中并成功执行中,发现一个致命的问题,那就是xe的安装文件和我的安装文件冲突,导致没法继续安装下去。调查了一下,发现问题出在xe所用的InstallShield安装包里,原来InstallShield也会将程序打包成.msi,然后用一个自己的setup文件来自动安装这个msi,而windows只允许一个msi实例运行,于是我自身的msi和InstallShield解压出来的msi出现了冲突,靠,看来只能转向用nsis了..
联系作者 easycruel@gmail.com
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/16168490/viewspace-680945/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/16168490/viewspace-680945/