- 浏览: 772708 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (208)
- Java (77)
- JavaScript (16)
- UML (1)
- Spring (24)
- Hibernate (11)
- J2EE部署 (18)
- 操作系统 (13)
- struts (11)
- jsp (3)
- J2EE (34)
- 数据库 (22)
- tomcat (4)
- apache (2)
- MyEclipse (13)
- Linux (14)
- Ext (6)
- Weblogic (2)
- 数据库 Oracle 空表导出 (1)
- Oracle (3)
- 编码 乱码 (1)
- 多线程 (5)
- jQuery (2)
- Apache Mina (1)
- ibatis (6)
- abator (1)
- svn (1)
- jvm (1)
- ERwin (2)
- mysql (2)
- ant (1)
- memcache (1)
- dubbo (1)
- PowerDesigner (1)
最新评论
-
di1984HIT:
Shallow heap & Retained heap -
tinguo002:
非常感谢 , 太棒了。
Spring注解方式,异常 'sessionFactory' or 'hibernateTemplate' is required的解决方法 -
白天看黑夜:
Apache Mina Server 2.0 中文参考手册(带 ...
Apache Mina – 简单的客户端/服务端应用示例 -
wumingxingzhe:
好文
Shallow heap & Retained heap -
di1984HIT:
学习了!!
工作流(Workflow)和BPM的不同
前言
ant是java开发者工具箱的重要一环,junit,xdoclet等都与它紧密关联,程序员可能习惯了IDE提供的自动构建,甚至部署的功能,从而忽略了ant本身,其实,主流的IDE通常是内置ant任务来完成这些工作的,熟悉ant内在的机理,可以阅读或简单修改build.xml无疑可以帮助你更灵活地集成、管理应用项目,如果需要学习maven这种开源项目管理解决方案,也是要以理解ant为基础的哟。另外,使用ant的过程实际上对构建进行了文档化,它是无关于IDE的,想象一下,你的同事中可能三分之一在用JbuilderX, 三分之一用eclipse,还有一些是别的。
本人使用eclipse3.0.1,以前的构建和发布工作都由myeclipse插件作了,趁周末实践了一下手动构建,记此备忘。
实践
准备工作:这是我的个人习惯,把所有公用的类库jar置于一个固定目录,分好类,不要丢在一个文件夹下,如jakarta-commons、 hibernate、spring、struts等,这些是源码构建时需要用到的,在部署时可能有一些不用再打进去了,比如servlet.jar。如果你们有自己的framework,也一并放在这里。然后,打开eclipse,进入Windows->Preferences->Java->User Libraries,增加一个自己的库,比如说mylib,把刚才那些公共的jar全部添入,这样有个好处,在eclipse项目中,不用再看到烦人的长长的jar列表了,比较整洁。
下来正式进行:
1.新建一个Java Project,此时就不要再选你的j2ee插件内置的一些选项了,至简即可。
2.在root下建几个文件夹,我们在网上下载的开源项目中经常可以看到这些,比如:
src - 源码
classes - 编译
web - jsp等
lib - 库,这里可以简单地把mylib下的东东copy过来,便于将来发布源码。
dlist - 输出的jar或war
当然,我们要建一个build.xml,eclipse中会出现一个蚂蚁的小图标,一般这个文件建立后,下一个项目简单的copy过去,稍加改动就可以了。
3.打开项目的属性页,在Java Build Path的库选项中,加入我们自定义的公共库mylib.至于Builders方式就不用改了,使用默认的Java Builer即可,我只是项目部署时使用ant,平常的排错工作就交给IDE吧。
4.重中之重,写你的build.xml,网上文章很海,我这里就不再啰嗦了,基本上就分那几个任务:
4.1 先要声明一些路径变量,如
也可以将其写至properties文件中,在这里引用;
4.2 声明编译的类路径,如下:
4.3 清空输出目录,如web,dlist等。
4.4 编译构建:
4.5 打成war
4.6 把几个任务串起来,弄一个default target
打完收功。在实践中发现,一些配置文件,如struts-config.xml ibatis和spring的xml都可以打进jar文件,spring资源文件好象不行,得单独copy至WEB-INF\classes下,另外,你的web文件夹下,事先得放好web.xml,以及一些tld文件哟。
ant是java开发者工具箱的重要一环,junit,xdoclet等都与它紧密关联,程序员可能习惯了IDE提供的自动构建,甚至部署的功能,从而忽略了ant本身,其实,主流的IDE通常是内置ant任务来完成这些工作的,熟悉ant内在的机理,可以阅读或简单修改build.xml无疑可以帮助你更灵活地集成、管理应用项目,如果需要学习maven这种开源项目管理解决方案,也是要以理解ant为基础的哟。另外,使用ant的过程实际上对构建进行了文档化,它是无关于IDE的,想象一下,你的同事中可能三分之一在用JbuilderX, 三分之一用eclipse,还有一些是别的。
本人使用eclipse3.0.1,以前的构建和发布工作都由myeclipse插件作了,趁周末实践了一下手动构建,记此备忘。
实践
准备工作:这是我的个人习惯,把所有公用的类库jar置于一个固定目录,分好类,不要丢在一个文件夹下,如jakarta-commons、 hibernate、spring、struts等,这些是源码构建时需要用到的,在部署时可能有一些不用再打进去了,比如servlet.jar。如果你们有自己的framework,也一并放在这里。然后,打开eclipse,进入Windows->Preferences->Java->User Libraries,增加一个自己的库,比如说mylib,把刚才那些公共的jar全部添入,这样有个好处,在eclipse项目中,不用再看到烦人的长长的jar列表了,比较整洁。
下来正式进行:
1.新建一个Java Project,此时就不要再选你的j2ee插件内置的一些选项了,至简即可。
2.在root下建几个文件夹,我们在网上下载的开源项目中经常可以看到这些,比如:
src - 源码
classes - 编译
web - jsp等
lib - 库,这里可以简单地把mylib下的东东copy过来,便于将来发布源码。
dlist - 输出的jar或war
当然,我们要建一个build.xml,eclipse中会出现一个蚂蚁的小图标,一般这个文件建立后,下一个项目简单的copy过去,稍加改动就可以了。
3.打开项目的属性页,在Java Build Path的库选项中,加入我们自定义的公共库mylib.至于Builders方式就不用改了,使用默认的Java Builer即可,我只是项目部署时使用ant,平常的排错工作就交给IDE吧。
4.重中之重,写你的build.xml,网上文章很海,我这里就不再啰嗦了,基本上就分那几个任务:
4.1 先要声明一些路径变量,如
<property name="war.dir" value="dlist" />
也可以将其写至properties文件中,在这里引用;
4.2 声明编译的类路径,如下:
<path id="master-classpath"> <fileset dir="${lib.root}/struts"> <include name="struts-menu-2.3.jar" /> <include name="struts.jar" /> </fileset> <fileset dir="${lib.root}/jakarta-commons"> <include name="commons-*.jar" /> </fileset> <fileset dir="${lib.root}/ibatis2.0.9"> <include name="ibatis-*.jar" /> </fileset> <fileset dir="${lib.root}/jdbcdriver"> <include name="jtds-0.9-rc2.jar" /> </fileset>s ...... </path>
4.3 清空输出目录,如web,dlist等。
4.4 编译构建:
<target name="build" description="Compile main source tree java files into class files, generate jar files"> <mkdir dir="${build.dir}" /> <javac destdir="${build.dir}" source="1.3" target="1.3" debug="true" deprecation="false" optimize="false" failonerror="true"> <src path="${src.dir}" /> <classpath refid="master-classpath" /> </javac> <copy todir="${build.dir}" preservelastmodified="true"> <fileset dir="${src.dir}"> <include name="**/*.xml" /> <include name="**/*.properties" /> </fileset> </copy> <!-- ============================================= --> <!-- 据测试,资源文件不能被打到jar文件中,其余均可 --> <!-- ============================================= --> <copy todir="${webclasses.dir}/conf" preservelastmodified="true"> <fileset dir="${src.dir}/conf"> <include name="springResources*.properties" /> </fileset> </copy> <mkdir dir="${weblib.dir}" /> <jar jarfile="${weblib.dir}/${name}.jar" compress="true"> <fileset dir="${build.dir}"> <include name="**" /> </fileset> </jar> <copy todir="${weblib.dir}" preservelastmodified="true"> <fileset dir="${lib.root}"> <include name="log4j-1.2.8.jar" /> </fileset> <fileset dir="${lib.root}/struts"> <include name="struts-menu-2.3.jar" /> <include name="struts.jar" /> </fileset> <fileset dir="${lib.root}/jakarta-commons"> <include name="commons-*.jar" /> </fileset> <fileset dir="${lib.root}/spring-1.1.3"> <include name="spring.jar" /> <include name="aopalliance.jar" /> </fileset> ...... </copy> </target> <!-- ============================================= --> <!-- Compile main Java sources and copy libraries --> <!-- ============================================= --> <target name="warfile" description="Build the web application archive"> <mkdir dir="${dist.dir}" /> <war warfile="${dist.dir}/${name}.war" basedir="${war.dir}" webxml="${war.dir}/WEB-INF/web.xml"> <include name="*" /> <include name="WEB-INF/*.*" /> <exclude name="WEB-INF/web.xml" /> <include name="WEB-INF/classes/*.*" /> <include name="WEB-INF/lib/**" /> <exclude name="**/.*" /> </war> </target>
4.5 打成war
<target name="warfile" description="Build the web application archive"> <mkdir dir="${dist.dir}" /> <war warfile="${dist.dir}/${name}.war" basedir="${war.dir}" webxml="${war.dir}/WEB-INF/web.xml"> <include name="*" /> <include name="WEB-INF/*.*" /> <exclude name="WEB-INF/web.xml" /> <include name="WEB-INF/classes/*.*" /> <include name="WEB-INF/lib/**" /> <exclude name="**/.*" /> </war> </target>
4.6 把几个任务串起来,弄一个default target
<target name="all"> <antcall target="clean" /> <antcall target="build" /> <antcall target="warfile" /> </target>
打完收功。在实践中发现,一些配置文件,如struts-config.xml ibatis和spring的xml都可以打进jar文件,spring资源文件好象不行,得单独copy至WEB-INF\classes下,另外,你的web文件夹下,事先得放好web.xml,以及一些tld文件哟。
发表评论
-
Shallow heap & Retained heap
2012-05-16 17:09 49320所有包含Heap Profling功能的工具(MAT, You ... -
什么是两阶段提交协议
2012-05-08 16:58 1066两阶段提交协议 实现分布式事务的关键就是两阶段提交协议。在此 ... -
使用Eclipse远程调试Tomcat
2012-03-23 22:56 1510有些时候,调试不得不用外网,比如说做支付宝的支付接口,服务器后 ... -
Java compiler level does not match the version of the installed Java project fac
2012-03-02 11:32 1320问题现象:项目图标报错“Java compiler level ... -
WebService的事务处理
2012-03-01 15:03 1560如果你只是要解决两个系统之间的事务同步问题,可以采用判断服务是 ... -
非常有用的proxool属性详细解说
2011-12-13 16:19 1611Proxool连接池是sourceforge下的一个开源项目, ... -
在工程中查找自己修改的所有代码
2011-12-09 17:41 1048在工程中查找自己修改的所有代码的方法: 1.工程右键 -&g ... -
Apache Mina – 简单的客户端/服务端应用示例
2011-11-19 23:49 5529转自http://javasight.net/2011/05/ ... -
使用Eclipse(MyEclipse)+ abator自动生成iBatis代码
2011-11-03 00:39 1159一.安装插件Abator Abator for Eclipse ... -
工作流(Workflow)和BPM的不同
2011-09-21 15:31 13611、工作流(Workflow) 在模 ... -
Activiti 5.6:配置与Spring整合
2011-09-21 13:00 11434Activiti 5.6与Spring整合也比较简单,其基本 ... -
Activiti 5.6:流程活动自动与手工触发执行
2011-09-21 11:47 4910Activiti 5.6支持流程活动自动执行与手工触发执行。其 ... -
Activiti 5.6安装配置
2011-09-21 11:38 5885安装配置Activiti 5.6还是比较容易的,在这里 ... -
免费JSP空间JHOST邀请码
2010-08-13 17:05 1245免费JSP空间JHOST邀请码: 邀请码:20110428 ... -
清理weblogic缓存,解决部署不生效问题
2010-08-03 15:22 10126如果发布到weblogic的工程,登录发现还是原来的代码错误, ... -
Ant的安装和使用
2009-09-02 15:56 2340ant是jakarta一个非常好的OpenSource子项目, ... -
J2EE项目以"Exploded Archive"类型部署时不可用
2009-07-23 22:52 2486在myeclipse中部署项目时,当Deploy type为E ...
相关推荐
通过本文介绍的方法,我们可以有效地在Eclipse中使用Ant构建Web应用程序。这种方法不仅提高了构建过程的灵活性,还为团队协作提供了更好的支持。此外,掌握Ant的使用方法对于后续学习其他构建工具(如Maven)也...
### Eclipse中使用Ant详解 #### 引言 在软件开发领域,自动化构建工具的重要性不言而喻,它们能够显著提高开发效率,减少人为错误。Ant作为一款基于Java平台的批处理构建工具,自诞生以来便受到广泛欢迎。本文将...
使用 Eclipse 和 Java SE 创建独立 Web Services 应用程序 本文将指导读者使用 Eclipse 和 Java SE 6 创建独立 ...* 如何在 Eclipse IDE 中使用基于 Ant Java 的构建工具来运行特殊 Java 命令以生成代码的某些部分。
ant 自动化构建eclipse web项目, 并且打包发布,启动tomcat和浏览器
- **将Catalina-ant.jar添加到Eclipse Ant的classpath中**:确保Eclipse在执行Ant构建任务时可以正确加载所需的类库。 - **在Tomcat中增加管理员用户**:为了能够远程管理Tomcat服务器,需要设置具有相应权限的...
在IT行业中,构建工具是开发流程中的重要环节,它们帮助我们自动化编译、打包和部署应用。本篇文章将深入探讨如何使用Apache Ant工具部署由Eclipse开发的Web工程到Apache Tomcat服务器上。Ant是一个基于Java的构建...
在Eclipse中集成Ant,可以通过“新建 -> 项目 -> 通用 -> Ant构建”来创建一个Ant构建文件(build.xml),在这个文件中编写构建脚本。 接下来,配置Tomcat服务器。Eclipse提供了内置的Tomcat服务器插件,允许我们在...
在IT行业中,Java Web开发是构建企业级应用的重要领域,而Eclipse、Tomcat和Ant则是这个领域中的“三剑客”,它们各自扮演着不可或缺的角色。这篇内容将深入探讨这三者的整合开发,并以党海峰的教程为指导,帮助...
在本教程中,我们将深入探讨如何使用Spring MVC3框架构建Web应用程序。Spring MVC是一个轻量级的、模型-视图-控制器(MVC)架构,它使得开发人员能够有效地组织和处理Web请求,同时保持良好的代码结构和可维护性。 ...
在IT行业中,构建工具是开发流程中的重要环节,它们帮助开发者自动化地编译、测试和打包...结合Eclipse的项目配置文件,可以高效地管理和构建Web工程。熟悉并掌握Ant的使用,对提升开发效率和项目管理能力大有裨益。
前言 ant是java开发者工具箱的重要一环,...另外,使用ant的过程实际上对构建进行了文档化,它是无关于IDE的,想象一下,你的同事中可能三分之一在用JbuilderX,三分之一用eclipse,还有一些是别的。 本人使用eclipse3
根据给定的文件标题、描述以及部分内容,我们将深入探讨如何在Eclipse中使用Apache Ant进行自动化构建。Apache Ant是一款开源的Java工具,用于自动化软件构建过程中的任务,如编译、测试、打包和部署等。它通过XML...
在Java世界中,Ant曾是主流的构建工具,它使用XML编写构建脚本,但随着技术的发展,Maven和Gradle相继出现,提供了更高效、灵活的解决方案。 【Ant的介绍与特点】 Ant是Apache软件基金会的一个项目,它通过XML配置...
在Eclipse 3.1版本中,Web插件引入了一系列功能,极大地提升了开发者在集成开发环境(IDE)中创建、调试和部署Web项目的能力。这个插件包括了对JavaServer Pages (JSP),Servlet,以及相关Web技术的支持。 1. **JSP...
- **属性(Property)**:构建过程中使用的变量。 - **路径(Path)**:表示类路径的元素。 #### 三、在Eclipse中集成Ant Eclipse作为一款流行的集成开发环境(IDE),已经内置了对Ant的支持,可以直接在Eclipse中...
通过导入Ant构建文件,Eclipse能自动识别项目结构,并提供图形化的构建视图,使得调试和管理构建过程更为直观。 **Ant与JSP辅助开发**: 在Web应用开发中,Ant可以帮助处理JSP页面的编译和部署。它可以与Servlet...