您的位置:首页 > 产品设计 > UI/UE

关于build 还有hermes流程

2016-09-07 11:51 267 查看
1. ant build.xml 中<tstamp>是用于生成时间戳,然后把值赋给property中指定的变量。

build.xml中定义的task,然后按照依赖,执行的先后顺序整理出来

一般顺序,利用available标签检查依赖的jar是否完整。。

然后清除旧的class文件,以及xml等文件。。。。 直接删除文件夹。

然后初始化,创建jar包等文件需要存放的文件夹mkdir,就是把jar包拷贝到你指定的文件夹下。。。

然后创建一些其他需要的文件夹mkdir。。

是用javac命令,编译你的source,并指定编译文件存放的文件夹。(class, properties, xml等)

使用filter标签:例子  <filter token="applicationName" value="{ant.project.name}">

然后因为是web项目,如果一些xml, properties不是在WEB-INF或者WEB-INF/classes下面,再将文件copy到下面。

然后可以选择生成war包。使用<war>标签,指定web.xml文件的位置赋给webxml属性。

将生成的指定的class文件,使用jar标签,生成jar包。

例如:

<jar destfile....../XXX.jar>

<fileset>...</fileset>

<metainf><include name="xxxxx.xml"></matainf>

</jar>

还可以生成ear,通过ear标签

例如:

<ear destfile=".../XXX.ear" appxml="...../application.xml" ....>

</ear>

其中application.xml中格式:

<application...>

<module>

<web>

<web-uri>XXXX.war</web-uri>

<context-root>xxxxx</context-root>

</web>

</module>

</application>

接下来的task,name是install或者别的,可以由hermes调用。

执行的例如 copy以下kshell,python等命令,到指定目录下,一般是bin下。。

然后另一个task,name是createRPM,命令是

使用chmod改变一些文件的权限。

然后执行这个kshell,执行其他命令。。

例如

<target name="createRPM">

<chmod dir="./xxx" perm="ugo+w"... includes="package.spec"> -- 这个文件是rpm使用的,在另外一个文章有介绍。

<chmod dir="./xxx" perm="ugo+rx"... includes=".../sh"/> -- 这脚本利用sed命令,将本地的package.txt,替代某些特殊字符后,重新定向输出到package.spec文件中。

<exec executeable="./xxx/xxx.sh">

<exec executeable="make" dir="XXX" os="Linux" failonerror="true"> -- 这个是找到这个项目的Makefile,然后根据传进来的参数,来执行调用哪些命令。

<arg line="package"/>

</exec>

</target>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: