信息化 频道

CRM理念、软件、实施,一个都不能少

    发布程序

    现在已经配置好了需要的资源,我们可以直接发布我们的Web Application了。我们建立一个新的target:

<target name="deploy">
<wldeploy action="deploy"
source="${webapp.source}"
name="${webapp.name}"
user="${server.username}"
password="${server.password}"
verbose="true"
adminurl="t3://${server.host}:${server.port}"
debug="true"
targets="${server.name}"/>
</target>

    相应的build.properties

webapp.name=ant
webapp.source=web

    所有的参数一目了然,webapp.source表示希望发布的目录或者是WAR或其他包,运行后我们就可以使用浏览器访问相应的url。这时候发布的程序是nostatge方式,也就是直接使用我们指定的目录,当然我们也可以使用参数nostage=false,将发布的程序拷贝到对应的stage。

    action还有redeploy,undeploy,redeploy,stop,start,我们这里并不需要,这里不作介绍,但我们可以轻易的加入到我们的build文件中,但在开发情况下,并不十分需要,有兴趣的话可以自己尝试使用。

    把这些整合起来

    我们希望开发者在得到这个工作目录后能够最快的开始工作,我们可以修改new-server任务。
<target name="new-server" depends="init" description="初始化Domain和Server">
<delete dir="${server.dir}"/>
<mkdir dir="${server.dir}"/>
<wlserver host="${server.host}"
port="${server.port}"
username="${server.username}"
password="${server.password}"
dir="${server.dir}"
action="start"
beahome="${beahome}"
weblogichome="${wlhome}"
generateConfig="true"
servername="${server.name}"
domainname="${domain.name}"
/>
<antcall target="doconfig"/>
<antcall target="deploy"/>
</target>

    我们添加了两个antcall,让server在建立好后,把环境和程序也发布完成,这样我们在得到我们的工作目录后,只需要配置一下,beahome和weblogichome,然后配置一下jdbc,然后运行ant new-server,我们的工作环境已经建立好了,可以马上开始自己的工作。

    非常好的实践

    6.1 开发模式

    在使用这样的Ant配置后,我们的开发就是这样开始的:

    1)软件配置人员做好项目的基本内容,分配好目录,配置build.properties文件中的公用部分。
    2)软件配置人员把项目提交到CVS或是其他版本控制工具。
    3)开发程序员从版本控制工具得到项目文件。
    4)程序员修改build.properties,然后运行ant new-server,就可以开始程序的开发了。

    6.2 产品模式

    在项目发布到产品环境下我们的工作目标有所改变,通常我们有许多的性能参数需要调整,繁琐的修改会很麻烦,也不适合长久的保存。

    1)实施人员配置好build.properties文件中的资源和性能参数。
    2)然后在需要实施的机器上运行执行
    3)产品直接可以使用了

    在集群环境下,以上繁琐的配置会显的更重要。

    总结和一些问题

    wlserver和wldeploy任务是不需要指定username和password的,但这需要相应的domain目录下有boot.properties文件,所以我们实际使用的时候,在生成domain和server后,为了保密,我们就可以把build.perperties中的username和password去掉,这样别人就无法知道密码。

    希望Bea能够加强这几个任务,现在还有些不方便的地方,尤其是关于CLASSPATH部分,我们还不太容易做到完全的自动化。
0
相关文章