导出WAS已部署的ear包的几种方法
可以通过下面几种办法将部署好的工程导出为一个ear包。
1、最简单的,通过was的控制台导出:
首先登录控制台,进入“企业应用程序”管理页面,选中要导出的工程,点击“导出”按钮
然后在出现的页面中点击链接即可下载工程到本地
2、通过wsadmin.sh命令导出:
wsadmin.sh -username -password -c "\$AdminApp export DefaultApplication /tmp/DefaultApplication.ear"
其中DefaultApplication是你部署的工程的名称,需要根据实际情况更改,后面是要导出的ear包的名称和路径。
注意在unix下执行该命令需要在$AdminApp的$符号前加上反斜杠。
3、使用EARExpander.sh命令生成ear包:
was ear包部署好后会将ear包存放在该Profile下的installedApps目录里,该ear包是一个解开的文件夹,
通过命令将该文件夹生成为一个ear包即可:
EARExpander.sh -ear /tmp/DefaultApplication.ear
-operationDir $PROFILE/installedApps/Node01Cell01/DefaultApplication.ear -operation collapse
其中-ear指定要生成的ear包的目录和文件名,-operationDir指定was保存的ear工程的路径。
4、最复杂的,但是对所有的应用服务器部署的ear包都适用,使用zip命令:
拿DefaultApplication.ear举个例子吧,
先进入到Profile下的installedApps目录里,
再进入到DefaultApplication.ear\DefaultWebApplication.war下,
执行命令zip -r DefaultWebApplication.war *
会将原来的DefaultWebApplication.war文件夹下的所有文件打包成一个zip文件,
然后将该zip文件移到DefaultApplication.ear目录下,删掉原来的DefaultWebApplication.war目录,
同样在DefaultApplication.ear目录下执行:zip -r DefaultWebApplication.ear *
生成的ear文件即可拿到其他服务器上去部署了。
是不是说的有点晕,动手做一遍就好了,呵呵。
使用上面方法生成的ear包都包含了部署时的一些信息,可以将ear包里的ibm打头的xmi文件删除即可,比如WEB-INF目录下的ibm-web-bnd.xmi、ibm-web-ext.xmi,META-INF目录下的ibm-application-bnd.xmi、ibm-application-ext.xmi、was.policy,再次部署时就和第一次部署没有区别了。
另外补充下,通过wsadmin.sh可以将整个was profile的配置、部署的工程直接导出成文件,然后可以将该文件在新的was环境中导入,所有的was配置、部署的工程原封不动的移植到了新环境