应用的开发如有一个好的结构,给程序的开发及发布带来便捷,一点总结:
1、文件夹的结构:
ant.properties :存放每个业务模块的ant打包属性文件。
IHC0100.properties
Build :存放打包后的文件,ant打包时会自动生成。
build.xml
createJar.bat
deploy.bat
Doc :生成的doc文件。
js :存放jsp的js文件。
jsp :存放jsp文件。
src :存放程序的原文件。
CSS :存放jsp的css文件。
deploy :打包用的build文件。
ear :打包时用的配置文件,包括application.xml及manifest文件。
jar :打包时用的配置文件,包括EJB的配置文件。
war :打包时用的配置文件,包括web.xml及manifest文件。
WEB-INF :打包时用的配置文件。
2、IHC0100.properties的文件内容:
subroot=IHC
3、createJar.bat的文件内容:
@echo off
REM No.1 1.1 Test1 (IHC0100)
REM echo IHC0100.jar Creating....
call ant jar -Did=IHC0100
REM No.2 1.2 test2 (IHC0200)
REM echo IPAN0200.jar Creating....
REM call ant jar -Did=IPAN0200
4、deploy.bat的文件内容:
@echo off
echo The application is uninstalled from WAS丅
call %WAS_HOME%\bin\wsadmin -conntype none -c "$AdminApp uninstall %2"
echo The application is installed in WAS丅
call %WAS_HOME%\bin\wsadmin -conntype none -c "$AdminApp install
%1%2.ear {-usedefaultbindings -defaultbinding.ejbjndi.prefix %2
-defaultbinding.force -useMetaDataFromBinary -deployejb
-deployejb.dbtype ORACLE_V9I -server APP_SERVER}"
5、build.xml的文件内容:
<project name="MyProject" default="ear" basedir=".">
<description>
QGBIHC example build file
</description>
<!--Mayby should change the following property -->
<property name="sourceDir" value="F:/workspace/ihc/test"/>
<property name="appname" value="test"/>
<!--Gobal property -->
<property name="src" value="${sourceDir}/src"/>
<property name="doc" value="${sourceDir}/doc"/>
<property name="build" value="${sourceDir}/build"/>
<property name="weblib" value="${sourceDir}/WEB-INF/lib"/>
<property name="classes" value="${sourceDir}/WEB-INF/classes"/>
<property name="dist" value="dist"/>
<property environment="env"/>
<property name="WAS" value="${env.WAS_HOME}"/>
<property file="${sourceDir}/ant.properties/${id}.properties"/>
<target name="init">
<!-- Create the time stamp -->
<tstamp/>
<mkdir dir="${build}"/>
<mkdir dir="${classes}"/>
</target>
<target name="compile" depends="init" >
<echo message="${id} Compile"/>
<javac srcdir="${src}"
destdir="${classes}"
classpath="${classes};
${weblib}/struts.jar;
${weblib}/poi.jar;
${weblib}/xercesImpl.jar;
${weblib}/xmlParserAPIs.jar;
${weblib}/classes12.jar;
${WAS}/lib/j2ee.jar;
"
debug="on"
optimize="on"
deprecation="on">
<include name="org/**/*.java"/>
</javac>
</target>
<!-- Jar-file Make -->
<target name="jar" depends="compile">
<mkdir dir="${build}"/>
<jar jarfile="${build}/${id}.jar" compress="yes"
manifest="${sourceDir}/Jar/test/${subroot}/${id}/EJB/META-INF/${id}.mf">
<metainf dir="${sourceDir}/Jar/test/${subroot}/${id}/EJB/META-INF">
<include name="*.xml"/>
</metainf>
<fileset dir="${classes}/"
includes="org/ihc/test/${subroot}/${id}/**/*.class"
excludes="org/ihc/test/${subroot}/${id}/excel/**
,org/ihc/test/${subroot}/${id}/framework/**
,org/ihc/test/${subroot}/${id}/pdf/**
,org/ihc/test/${subroot}/${id}/taglib/**"/>
</jar>
</target>
<!-- All Jar-file Make -->
<target name="jar_project">
<exec executable="cmd.exe">
<arg line= "/C createjar.bat"/>
</exec>
</target>
<!-- War-file Make -->
<target name="war" depends="jar_project">
<war warfile="${build}/${appname}.war"
webxml="${sourceDir}/War/test/test/WEB-INF/web.xml"
manifest="${sourceDir}/War/test/test/META-INF/${appname}.mf">
<fileset dir="${sourceDir}/">
<include name="CSS/*.css"/>
<include name="image/*.*"/>
<include name="js/*.js"/>
<include name="jsp/*.html"/>
<include name="jsp/test/**/*.jsp"/>
<include name="jsp/test/**/*.js"/>
<include name="jsp/test/**/*.css"/>
<include name="WEB-INF/*.tld"/>
<include name="WEB-INF/*.xml"/>
<include name="WEB-INF/*.dtd"/>
<exclude name="WEB-INF/web.xml"/>
</fileset>
<zipfileset dir="${classes}"
includes="org/ihc/test/**/excel/**/*.class
,org/ihc/test/**/framework/**/*.class
,org/ihc/test/**/taglib/**/*.class" prefix="WEB-INF/classes"/>
<zipfileset dir="${weblib}/"
includes="struts.jar
,classes12.jar
,modelism.jar
,xercesImpl.jar,
,xmlParserAPIs.jar,
,poi.jar" prefix="WEB-INF/lib"/>
</war>
</target>
<!-- Ear-file Make -->
<target name="ear" depends="war">
<ear earfile="${build}/${appname}.ear"
appxml="${sourceDir}/Ear/test/test/META-INF/application.xml"
manifest="${sourceDir}/Ear/test/test/META-INF/${appname}.mf"
update="yes">
<fileset dir="${build}/"
includes="*.jar
,*.war"/>
</ear>
</target>
<!-- Application Install -->
<target name="deploy" depends="ear">
<copy todir="${WAS}/installableApps" file ="${build}/${appname}.ear" />
<exec executable="cmd.exe">
<arg line= "/C deploy.bat"/>
<arg value= "${build}/"/>
<arg value= "${appname}"/>
</exec>
</target>
<target name="clean"
description="clean up" >
<delete>
<fileset dir="${build}" includes="*.jar, *.war, *.ear"/>
</delete>
<delete dir="${doc}"/>
</target>
<target name="doc">
<mkdir dir="${doc}"/>
<javadoc destdir="${doc}"
author="true"
version="true"
use="true"
sourcepath="${src}"
packagenames="org.ihc.test.*"
>
<doctitle><![CDATA[<h1>${appname}</h1>]]></doctitle>
<bottom><![CDATA[<i>Copyright ©
2000 Dummy Corp. All Rights Reserved.</i>]]></bottom>
<tag name="todo" scope="all" description="To do:" />
<group title="IPAN Packages" packages="org.ihc.test.IPAN.*"/>
<group title="MENT Packages" packages="org.ihc.test.MENT.*"/>
</javadoc>
</target>
<target name="help">
<echo>
-- Necessary Environment Variable--
WAS_HOME : WebSphere Application Server's DIR
-- For function unit (each function ID)--
ant jar -Did=[function ID] : Make jar-file
-- For the whole --
ant compile : Compile java-file
ant war : Make war-file
ant ear : Make ear-file
ant deploy : Make and deploy Application
ant doc : Make javadoc
ant clean : Clear class/jar/war/ear
ant help : Help message
</echo>
</target>
</project>
分享到:
相关推荐
"library.ant.design_Web_3.0.rplib"是该Ant Design Axure设计库的文件名,其中"3.0"可能表示这是Ant Design框架的第三个主要版本,"Web"则强调这是针对Web应用的设计库,".rplib"则是Axure中的库文件扩展名,用于...
Ant支持自动部署应用程序到远程服务器,如`ftp`、`scp`任务可以用于文件传输,`deploy`任务可用于发布Web应用。 十二、测试集成 Ant与JUnit和其他测试框架良好集成,可以方便地执行单元测试,并生成测试报告。 ...
Ant Design,源自阿里巴巴,是一个用于Web应用界面的React UI设计框架。它遵循“移动优先”的设计理念,提供了一套完整的、响应式的界面设计语言,使得开发者能够快速构建出美观且一致的用户界面。而在Axure中,Ant ...
在实际应用中,Ant Design Library 3.0能够帮助团队保持设计规范,减少沟通成本。当所有成员都在同一套组件库下工作时,设计方案的一致性和可维护性将得到显著提升。同时,由于组件库与Ant Design Web框架的紧密联系...
9. **发布与部署**:Ant可以用于应用的打包、发布和部署,包括生成JAR、WAR或EAR文件,以及将这些文件部署到远程服务器上。 10. **依赖分析**:在Ant 1.8.0中,依赖分析能力得到提升,有助于优化构建顺序,减少不必...
在实际应用中,Ant 1.6可以与JUnit等测试框架集成,实现自动化测试。同时,它也可以与Maven或Gradle等现代构建工具协同工作,尽管Maven后来成为了更主流的选择,但Ant因其简洁性和定制性仍然在一些项目中得到应用。 ...
这个压缩包很可能是2017年10月26日发布的一个更新版本,包含了一些适用于AntDesign 3.0.x版本的Axure组件库。 AntDesign,全称为Ant Design,是基于“确定”和“自然”的设计理念,提供了一套模块化的解决方案,...
Ant是Java开发领域中的一款强大且广泛应用的构建工具,它由Apache软件基金会开发并维护。Ant以其XML为基础的构建文件(build.xml)著称,该文件定义了项目的构建过程,包括编译、打包、测试等任务。在Java项目开发中...
为了能够高效地开发出高质量的应用程序,开发者们常常会选择使用不同的工具和框架来加速开发流程。本教程将介绍如何利用 Apache Ant 来搭建 Android 开发环境,并通过一个简单的 HelloWorld 示例来展示其基本用法。 ...
5. **部署**:Ant可以通过`copy`或`ftp`任务将应用部署到远程服务器,简化了发布流程。 6. **依赖管理**:虽然Ant自身不提供复杂的依赖管理功能,但可以通过与 Ivy 或 Maven 结合,解决项目依赖库的下载和管理问题...
- Ant的主要功能与应用场景 - Ant与构建自动化的重要性 2. **Ant入门指南** - 安装与配置Ant - 创建第一个Ant脚本 - 常用构建任务介绍 3. **理解Ant数据类型与属性** - 数据类型的定义与使用 - 属性的作用...
4. **部署**:发布应用到服务器,如Tomcat、WebLogic等。 5. **清理**:清除编译过程中产生的临时文件和目录。 6. **依赖管理**:管理项目的依赖库,包括下载和更新库文件。 7. **文件操作**:复制、移动、删除文件...
Apache Ant 1.9系列在2013年发布,包含了多个小版本更新,例如1.9.11是该系列的一个维护版本,旨在修复已知问题并提供一些改进。 在描述中提到,用户在使用Qt开发Android应用时遇到了问题,发现"apache-ant-1.9...
Ant Launcher是Ant框架的一部分,主要负责启动Ant任务。它不包含Ant的全部功能,而是作为一个轻量级的入口,用于执行Ant脚本。这个启动器允许开发者通过命令行或者集成开发环境(IDE)调用Ant来构建项目,而无需完整...
这个压缩包“org.apache.ant_1.7.1.v20100518-1145.zip”包含了Apache Ant 1.7.1版本的所有组件,这个版本发布于2010年5月18日,版本标识为1145。Ant是基于XML的,其设计目标是驱动构建过程,允许开发者编写可重复...
- **可扩展性**:Ant允许开发人员定义自己的任务,可以集成其他工具和框架。 总的来说,Ant是Java开发中不可或缺的工具,它简化了项目的构建流程,使开发者能更专注于代码开发,而不是繁琐的构建工作。尽管现代的...
- **部署**:发布应用程序到远程服务器或应用服务器。 - **清理**:清除构建过程中产生的临时文件和目录。 - **文件操作**:包括复制、移动、删除和重命名文件或目录。 3. **Ant的配置** - **环境设置**:确保...
在IT行业中,SpringMVC作为一个强大的Java Web框架,被广泛应用于构建RESTful API服务。本教程将探讨如何在SpringMVC中实现多版本接口管理、IP访问控制以及使用ANT工具进行打包并部署到Linux服务器。 首先,让我们...
Spring框架是Java开发中广泛应用的轻量级框架,它提供了依赖注入、面向切面编程等核心功能,极大地简化了企业级应用的开发。在Spring中,有时我们会遇到需要执行构建任务的情况,这时就会用到Ant工具。Ant是Apache...