Appfuse里面带的Ant任务列表

Appfuse里面带的Ant任务列表

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

任务名

说明

bin

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

checkstyle  

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

clean清除制作好的各种产品
compilecompile-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-daoDAO打成一个单独的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文件
warpackage-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!!进入主界面(界面没有上传,不好意思了^_^)  


 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值