Posted on 2005-11-25 08:54
Kela 閱讀(1112)
評(píng)論(1) 編輯 收藏
web 應(yīng)用常見(jiàn)的開(kāi)發(fā)目錄結(jié)構(gòu)
app.home
+ -- build --存放由ant工具生成的web應(yīng)用的開(kāi)放目錄結(jié)構(gòu)
+ -- deploy --存放由ant工具生成的web應(yīng)用的 war 文件
+ -- doc --存放由ant工具生成的JavaDoc文件
+ -- lib --存放所有的 jar 文件
+ -- bin --存放編譯生成的 java 類( . class )文件
+ -- src --存放 java 源文件和屬性文件
+ -- webRoot -- 存放 web 應(yīng)用的 jsp ,html,圖片等
|
+ -- WEB-INF --存放 web.xml 以及其他的配置文件(如 Struts的 cfg等)
創(chuàng)建 build.xml 配置文件
build.properties : 存放與 web 服務(wù)器相關(guān)的屬性
build.xml : ant 任務(wù)的配置文件
以下是 build.properties
tomcat.home=D\:/JavaSoft/tomcat5
webapps.home=D\:/JavaSoft/tomcat5/webapps
以下是 build.xml
<?xml version="1.0" encoding="GB2312"?>
<project name="JeeProjece" default="help" basedir=".">
<property file="build.properties" />
<property name="app.home" value="."/>
<property name="app.name" value="HibernateProject"/>
<property name="javadoc.pkg.top" value="com"/>
<property name="src.home" value="${app.home}/src"/>
<property name="bin.home" value="${app.home}/bin"/>
<property name="lib.home" value="${app.home}/lib"/>
<property name="web.home" value="${app.home}/web"/>
<property name="doc.home" value="${app.home}/doc"/>
<property name="deploy.home" value="${app.home}/deploy"/>
<property name="build.home" value="${app.home}/build"/>
<!-- ClassPath -->
<path id="compile.classpath">
<!-- application is jar -->
<fileset dir="${lib.home}">
<include name="*.jar"/>
<include name="*.zip"/>
</fileset>
<!-- Tomcat -->
<fileset dir="${tomcat.home}/common/lib">
<include name="*.jar"/>
</fileset>
<pathelement location="${tomcat.home}/common/classes"/>
</path>
<!-- help -->
<target name="help">
<echo message=" ********** 說(shuō) 明 ********** "/>
<echo message=" (1). clean-file-1 : 刪除 doc, deploy, build "/>
<echo message=" (2). clean-file-2 : 刪除 ... ... "/>
<echo message=" (3). buildFile: 構(gòu)建工程文件 "/>
<echo message=" (4). compile: 編譯源文件 "/>
<echo message=" (5). build: 工程構(gòu)建 "/>
<echo message=" (6). deploy: 發(fā)布打包好的war文件"/>
<echo message=" (7). javadoc: 生成JavaDoc"/>
<echo message=" (8). copyApp: 復(fù)制生成的應(yīng)用到服務(wù)器中去,依賴于 (5) 工程構(gòu)建 "></echo>
</target>
<!-- clean doc, depoy, build -->
<target name="clean-file-1">
<delete dir="${deploy.home}"/>
<delete dir="${doc.home}"/>
<delete dir="${build.home}"/>
</target>
<!-- clean all -->
<target name="clean-file-2">
</target>
<!-- 創(chuàng)建文件 -->
<target name="buildFile">
<mkdir dir="${bin.home}"/>
<mkdir dir="${deploy.home}"/>
<mkdir dir="${doc.home}"/>
<mkdir dir="${doc.home}/api"/>
<mkdir dir="${build.home}"/>
<mkdir dir="${build.home}/WEB-INF" />
<mkdir dir="${build.home}/WEB-INF/classes" />
<mkdir dir="${build.home}/WEB-INF/lib" />
</target>
<!-- 編譯源文件 -->
<target name="compile">
<javac srcdir="${src.home}" destdir="${bin.home}" debug="yes">
<classpath refid="compile.classpath"/>
</javac>
</target>
<!-- 構(gòu)建 -->
<target name="build">
<echo message=" 開(kāi)始構(gòu)建工程 "/>
<copy todir="${build.home}">
<fileset dir="${web.home}"/>
</copy>
<copy todir="${build.home}/WEB-INF/classes">
<fileset dir="${bin.home}"/>
</copy>
<copy todir="${build.home}/WEB-INF/classes">
<fileset dir="${src.home}">
<include name="**/*.properties" />
<include name="**/*.prop" />
<include name="**/*.class" />
</fileset>
</copy>
<copy todir="${build.home}/WEB-INF/lib">
<fileset dir="${lib.home}" />
</copy>
<jar jarfile="${deploy.home}/${app.name}.war" basedir="${build.home}"/>
</target>
<!-- 發(fā)布打包后的war文件 -->
<target name="deploy">
<copy todir="${webapps.home}" file="${deploy.home}/${app.name}.war" />
</target>
<!-- 生成 JavaDoc -->
<target name="javadoc">
<javadoc sourcepath = "${src.home}"
destdir = "${doc.home}/api"
packagenames = "${javadoc.pkg.top}.*"/>
</target>
<!-- copy應(yīng)用到服務(wù)器中去 -->
<target name="copyApp" depends="build">
<echo message=" 開(kāi)始復(fù)制文件 "/>
<copy todir="${webapps.home}/${app.name}">
<fileset dir="${build.home}"/>
</copy>
</target>
</project>