`
javafenger
  • 浏览: 246734 次
  • 来自: ...
文章分类
社区版块
存档分类
最新评论

Appfuse里面带的Ant任务列表

阅读更多
<!---->

Appfuse里面带的Ant任务列表

    使用Appfuse开发应用程序经常需要使用开发包中定义好的Ant 任务,这里是Ant 任务的详细说明:
  

任务名

说明

bin

创建war程序包,jdbc驱动,和XML文件

checkstyle  

检查代码是否符合代码规范要求

clean 清除制作好的各种产品
compile compile-web的别名
compile-dao 编译dao模块
compile-service 编译service模块
compile-web 编译web模块
copy-resources 从原程序目录中拷贝.properties和.xml文件
copy-web-files       拷贝静态文件
db-create 创建 ${database.type}类型的数据库
db-drop 删除数据库表
db-export 导出当前数据库中的数据
db-load 把示例数据加载到数据库中
db-prepare 创建数据库表
deploy 把war程序包解包部署到应用服务器的目录中去
deploy-test-reports 把JUnit测试报告发布到服务器上
deploy-war 发布\'${webapp.name}.war\'到本地Tomcat服务器上
deploy-web 仅仅发布web的classes文件到servlet容器中去
tory  
dist 创建的一个压缩tar.gz文件,包含了全部路径和分发用的文件
docs 运行javadoc, todo, checkstyle和pmd tasks
ftp 通过FTPs上传分类文件到指定的服务器中
gen-tests-dao 为dao模块产生测试类
gen-tests-service 为模块产生测试程序
gen-tests-web 为web模块产生测试程序
hibernatedoclet 产生Hibernate映射文件
init 加入自定义任务
install Tomcat安装应用
install-ibatis 安装iBATIS
install-springmvc 安装Spring\'s MVC,删除Struts
install-webwork 安装WebWork,删除Struts
java2html   创建HTML页面以便在线察看代码
javadoc 产生JavaDoc API文档
jsp-2 转换JSP 1.2 Tags (i.e. JSTL) 到JSP 2.0标准
list 列出所有Tomcat应用
new 创建一个新的用户命名的project
package-dao DAO打成一个单独的JAR包
package-web 应用程序打WAR包
ping-tomcat pings tomcat确定tomcat还在运行
pmd 定位没有无用的imports语句,无用的variables,等等。
prepare 创建目标目录
refresh 清除原来的程序并重新发布
reload 在Tomcat重新加载应用程序
remove 移除Tomcat中的应用程序
setup 创建数据库,设置tomcat环境,发布解包应用程序
setup-db 创建数据库并且填充数据,会被许多其他任务调用
setup-tomcat 拷贝jdbc driver和context.xml到tomcat对应的目录下
stage-web 调用所有的其他任务搜集静态资源
start 启动Tomcat应用
start.tomcat 在当前控制台窗口下启动tomcat
stop 停止以一个Tomcat应用
test-all 运行一个POJO所有的测试包括dao, service, web和jsp
test-all-running 运行所有的DAOs, Services, Controllers和JSPs测试
test-canoo 运行Canoo WebTests 以在 Tomcat中测试JSP程序
test-dao 测试dao模块
test-jsp 使用Cargo运行Canoo WebTests
test-reports 产生测试报告
test-service 测试service模块
test-web 测试web模块
todo 创建代码中的todo任务报告
undeploy 删除、反安装一个发布好的 war文件
war package-web的别名
webdoclet 产生web开发描述
wiki 从wiki下载文件产生文档


--  作者:bibiye
--  发布时间:2005-1-11 20:03:44

--  

Appfuse实践(一)——配置安装

我使用的是webwork+spring+hibernate,其他的可以参考相关tutorial。

一、系统环境准备
      从http://java.sun.com下载,我使用1.4.2_05.
      从latest Tomcat release 下载tomcat,目前的版本是5.0.28。最好不要用LE版本否则你要添加DBCP和JavaMail的JAR包.
      下载最近的Appfuse版本,我使用的是 AppFuse 1.6。
      下载mysql。

      将会使用 Ant, XDoclet, Spring, Hibernate (or iBATIS), JUnit, Cactus, StrutsTestCase, Canoo\'s WebTest, Struts Menu, Display Tag Library, OSCache, JSTL and Struts (or Spring MVC)这些组件。

二、开始安装配置Appfuse
       download appfuse 并且解压
       需要启动Mysql服务器
       建立自己的应用程序数据库默认字符集是UTF8,这个问题很关键,因为Appfuse支持多语言否则程序无法正常运行。所以Mysql服务器的默认的字符集也应该是UTF8,大家使用mysql怎么更改到UTF8字符集我不知道,我是通过命名行参数启动的:
       mysqld --default-character-set=utf8

      此时可以用ant建立自己的应用了:
ant new -Dapp.name=myApp -Ddb.name=mydb

如果需要改变数据库可以修改build.properties文件中这部分的参数:
#database.jar=${postgresql.jar}
#database.type=postgresql
#database.name=myApp
#database.host=localhost
#database URL for creating other databases (doesn\'t work with pgsql)
#database.admin.url=jdbc:${database.type}://${database.host}/template1
#database.admin.username=postgres
#database.admin.password=postgres

#hibernate.dialect=net.sf.hibernate.dialect.PostgreSQLDialect
#database.driver_class=org.postgresql.Driver
#database.url=jdbc:${database.type}://${database.host}/${database.name}


建立数据库database, 在tomcat上发布应用

运行
ant setup

出错了,无法自动建立数据库mydb。出错信息如下:
BUILD FAILED: D:\\myfile\\myApp\\build.xml:830: org.dbunit.dataset.NoSuchTableException: app_user

检查执行过程,把自动执行的创建app_user的sql语句放到mysql control center中执行
create table app_user (
username varchar(20) not null,
version integer not null,
password varchar(255),
first_name varchar(50),
last_name varchar(50),
address varchar(150),
city varchar(50),
province varchar(100),
country varchar(100),
postal_code varchar(15),
email varchar(255) not null unique,
phone_number varchar(255),
website varchar(255),
password_hint varchar(255),
primary key (username)
);
执行失败,错误提示:
[root@localhost:3306] 错误 1071: Specified key was too long. Max key length is 500
作如下修改,成功了,
email varchar(255) not null unique改成
email varchar(100) not null unique,

经过测试,长度超过166(包括)就出错了!
不知道是不是UTF8字符集造成的原因,一个UTF8字符被认为占用了三个字节(500/3<167)??
就是说声明为 not null unique的字段长度不能超过166。


由于sql语句根据POJO的tag自动创建:

找到org.appfuse.model.User的源程序

修改
@hibernate.column name="email" not-null="true" unique="true"

改成:
@hibernate.column name="email" not-null="true" length="166" unique="true"

运行
ant setup-db

成功了!ok!


启动tomcat 5.0.25
运行
ant setup

出错了

BUILD FAILED: D:\\edu\\edu\\build.xml:33: Please copy junit.jar into C:\\ant/lib

完成拷贝

成功了!excellent!
打开浏览器FireFox run一下:

输入:http://127.0.0.1:8080/myApp

没有反应??怎么回事??

命令行下面启动tomcat,看看有什么错误提示:

unregistering logger Catalina:type=Logger,path=/myApp,host=localhost

打开C:\\Tomcat\\conf\\Catalina\\localhost\\myAqpp.xml

修改:注释掉  logger信息
<!-- Logger className="org.apache.catalina.logger.FileLogger" prefix="myApp_log." suffix=".txt" timestamp="true"/ -->

重新启动tomcat

还是不对

更换版本tomcat 5.0.5.28
错误信息变了
Application 没有启动??

运行任务

ant install


没有成功!出错信息如下:

BUILD FAILED: D:\\myfile\\myApp\\build.xml:1221: java.io.IOException: Server returned HTTP response code: 401 for URL: http://localhost:8080/manager/deploy?path=%2FmyApp


直接在浏览器中输入http://localhost:8080/manager/deploy?path=%2FmyApp

??出现窗口要求输入用户名和密码
查看myApp\\tomcat.properties 管理员用户密码为admin,admin

修改 tomcat\\conf\\tomcat-users.xml 增加管理员admin

增加两个角色

<role rolename="admin"/>
  <role rolename="manager"/>

增加admin用户
<user username="admin" password="admin" roles="role1,tomcat,admin,manager"/>

删除tomcat下面myApp目录和conf\\Catalina\\localhost下的myApp.xml文件,重新启动tomcat

运行

ant install

成功了!!


但是tomcat报错:
2004-11-14 19:59:49 org.apache.catalina.core.StandardHostDeployer install
信息: Processing Context configuration file URL file:/C:/Tomcat/conf/Catalina/localhost/myApp.xml
2004-11-14 19:59:49 org.apache.catalina.core.StandardHostDeployer install
信息: Installing web application from URL jar:file:/C:/Tomcat/webapps/myApp.war!
/
2004-11-14 20:00:04 org.apache.catalina.core.StandardContext listenerStart
严重: Skipped installing application listeners due to previous error(s)
2004-11-14 20:00:04 org.apache.catalina.core.StandardContext start
严重: Error listenerStart
2004-11-14 20:00:04 org.apache.catalina.core.StandardContext start
严重: Context startup failed due to previous errors
2004-11-14 20:00:04 org.apache.catalina.logger.LoggerBase stop
信息: unregistering logger Catalina:type=Logger,path=/myApp,host=localhost

为什么呢??

tomcat版本不对??

运行struts安装程序,正常运行

重新运行ant install-webwork

BUILD FAILED: D:\\myfile\\myApp\\build.xml:1391: Basedir D:\\myfile\\myApp\\extras\\webwork does not exist

嗯~~

更改extras\\viewgen目录名称为webwork

重新运行ant install-webwork

再运行ant install

打开firefox,输入 http://127.0.0.1:8080/myApp。成功了!

输入用户名mraible
密码tomcat

OK!!进入主界面(界面没有上传,不好意思了^_^)  


 

分享到:
评论

相关推荐

    Appfuse的Ant任务列表

    Appfuse的Ant任务列表是开发者进行日常开发、构建和部署的重要参考文档,下面将详细介绍其中的一些关键任务: 1. **clean**:此任务负责清理项目生成的临时文件和目标目录,如编译后的class文件、测试结果、打包...

    appfuse

    通过查阅AppFuse 2.0的官方文档或者从已知的依赖列表中,你可以找到必要的库,如Spring、Hibernate等,并将它们的依赖条目添加到`pom.xml`中。每个依赖项通常包含groupId、artifactId和version,例如: ```xml ...

    AppFuse

    ### AppFuse:加速J2EE项目开发 #### 一、简介与背景 AppFuse是一个用于启动J2EE项目的工具包,它提供了一种快速而简便的方法来构建基于Java的应用程序。该工具包由Matt Raible创建,他在网络开发领域拥有丰富的...

    APPFUSE工具研究.doc

    AppFuse分为1.x和2.0两个主要版本,其中2.0版是重构建的,采用了Maven 2作为构建工具,而1.x版本则使用Ant。 Maven 2的引入带来了许多优势,包括自动下载依赖项、简化维护(因为所有组件可以一次编译)以及方便最终...

    appfuse学习笔记(一)安装部署

    **AppFuse 学习笔记(一):安装与部署** AppFuse 是一个开源项目,它提供了一种快速构建企业级 Web 应用程序的方式。它使用了多种流行的技术栈,如 Spring Boot、Hibernate、Thymeleaf 和 Maven,使得开发者可以更...

    Appfuse开发教程

    利用Appfuse的Ant构建脚本,我们可以根据POJO类生成数据库表。通过执行特定的任务,XDoclet会解析POJO类的元数据,然后生成对应的Hibernate映射文件,最后创建数据库表。 3. **建立新的DaoTest来对你的DAO运行...

    使用appfuse构建环境

    - Ant是用于自动化构建过程的工具,AppFuse的构建流程依赖于Ant。 - 此外,需将`junit.jar`复制到`%ANT_HOME%/lib`目录下,此文件可以从AppFuse解压目录中的`lib/junit3.8.1`获取。 **5. 安装MySQL** - 从MySQL官方...

    appfuse 学习笔记

    ### Appfuse 学习笔记 #### 一、Appfuse 简介 Appfuse 是一个开源框架,旨在帮助开发者高效地构建企业级应用。通过提供一套完善的架构模板、最佳实践和技术栈组合,使得开发者能够专注于业务逻辑的实现,而不是...

    AppFuse学习笔记

    AppFuse 会自动处理框架集成、XDoclet 代码生成等复杂任务,使得开发者能快速专注于业务逻辑的实现。 总之,AppFuse 是一个强大的工具,它简化了 J2EE 应用的开发过程,特别是对于那些希望快速启动新项目并集成多种...

    ANT构建AppFuse

    **AppFuse 概述** AppFuse 是一个开源项目,它为开发基于Java的Web应用程序提供了一个快速启动的基础。它的核心目标是简化开发过程,特别是对于初学者和那些想要快速搭建可扩展、模块化且遵循最佳实践的应用程序的...

    appfuse1.4-architecture

    06年时的appfuse,学习SSH架构的经典入门框架。相对比较老的资料,可以欣赏一下当时的架构,向牛人致敬

    AppFuse项目研究

    这个监听器是 Spring 的 `ContextLoaderListener` 和 Servlet API 的 `ServletContextListener` 的子类,它在Web应用程序启动时执行一些关键的初始化任务。在 `web.xml` 文件中配置这个监听器,使得容器在启动时能够...

    AppFuse2.1所需包

    AppFuse 是一个开源项目,旨在简化Java Web应用程序的开发。它提供了一个基础架构,开发者可以在此基础上快速构建安全、可扩展的应用程序。AppFuse 2.1 版本是该项目的一个较早版本,但仍然包含了现代Web开发的核心...

    appfuse 配置说明 doc 格式

    - **环境变量配置**:`JAVA_HOME`、`CATALINA_HOME`和`ANT_HOME`的正确设置是AppFuse能够运行的基础,它们分别指定了JDK、Tomcat和Ant的安装位置。 - **Ant的额外配置**:Ant作为构建工具,需要额外的依赖库(如...

    可直接使用的appfuse项目

    AppFuse是一个集成了众多当前最流行开源框架与工具(包括Hibernate、ibatis、Struts、Spring、DBUnit、Maven、Log4J、Struts Menu、Xdoclet、SiteMesh、OSCache、JUnit、JSTL等(现在还有lucene的,无敌了))于一身的...

    MAVEN 搭建APPFUSE

    【MAVEN 搭建APPFUSE】是一个关于使用Maven构建基于AppFuse的应用程序的教程。AppFuse是一个开源项目,旨在简化Web应用程序的开发,它提供了一个基础框架,可以帮助开发者快速启动新项目,整合了Spring、Hibernate、...

    Appfuse教程Appfuse开发.pdf

    - 查看并测试带有验证功能的 JSP 页面,确保验证逻辑正确无误。 3. **DAO 和 Manager 的测试添加 testGetPeople 方法** - 在 `PersonDaoTest` 和 `PersonManagerTest` 中添加测试方法,验证获取人员列表的功能。...

Global site tag (gtag.js) - Google Analytics