18步启动appfuse2.0.2

来源:互联网 发布:惠州房子值得买吗 知乎 编辑:程序博客网 时间:2024/06/09 02:06

1 安装 jdk 5+ maven 2.09 mysql 5.x 
2 配置 JAVA_HOME M2_HOME 
在path中添加%JAVA_HOME%/bin;%M2_HOME%/bin 
3 将下载下来的appfuse-dependencies-2.0.2解压到.m2/repository 下面 
4 创建自己存放项目的目录 例如 c://appfuse 
5 cd c://appfuse 
6 运行创建骨架的命令,不同的框架选用不同的命令,以下是Struts2 Basic的创建命令 
mvn archetype:create -DarchetypeGroupId=org.appfuse.archetypes -DarchetypeArtifactId=appfuse-basic-struts -DremoteRepositories=http://static.appfuse.org/releases -DarchetypeVersion=2.0.2 -DgroupId=com.mycompany.app -DartifactId=myproject 
mvn archetype:create -DarchetypeGroupId=org.appfuse.archetypes -DarchetypeArtifactId=appfuse-basic-struts -DremoteRepositories=http://static.appfuse.org/releases -DarchetypeVersion=2.0.2 -DgroupId=com.qhin.app -DartifactId=qshin 
说明:DartifactId:项目名称 DgroupId:包结构 
运行完以上命令,将会生成c://appfuse/qshin 
7 cd c://appfuse/qshin 运行 mvn 
说明:运行到[cargo:start {execution: start-container}] 会比较慢 会下载tomcat6到 C:/Documents and Settings/Johnson Lee/Local Settings/Temp/cargo/installs 
发生错误 
解决方法:在pom.xml文件找到Cargo settings块 手动下载tomcat压缩包 替换 C:/Documents and Settings/Johnson Lee/Local Settings/Temp/cargo/installs中的 
运行通过 
8 剩下的命令就是运行程序了 mvn jetty:run-war 好了 可以运行 http://localhost:8080了 
熟悉清爽的界面出现在眼前 
9 开始构建吧 
运行 mvn war:inplace 将war中的文件放入 自己的项目的webapp目录 
运行 mvn appfuse:full-source 出现错误 查找了原因 据说是ant 1.7.0的bug 1.7.1会解决 空格的问题 
解决方法:配置 maven/cong/setting.xml C:/appfuse/repository 
我将原来.m2/repository 下的文件拷贝到了C:/appfuse/repository 使用此处的 
重新运行mvn appfuse:full-source 通过 重新看看C:/appfuse/qshin/src/main/java下面吧 将org.appfuse的源文件都copy过来了 
并且让我开心的是 都改名为com.qhin.app了 dao model service util webapp 都在下面了 高兴 
10 运行mvn install eclipse:eclipse 生成eclipse的项目文件 当然也可以用idea netbeans 
这个过程会慢点 因为要下载一些依赖的jar 
11 导入myeclipse 
12 创建表 
CREATE TABLE `Employee` ( 
`id` bigint(20) NOT NULL auto_increment, 
`code` varchar(10) NOT NULL, 
`dept` varchar(50) NOT NULL, 
`name` varchar(20) NOT NULL, 
`status` varchar(10) NOT NULL, 
`telephone` varchar(20) default NULL, 
`title` varchar(50) NOT NULL, 
PRIMARY KEY (`id`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8; 
13 由表生成model 运行mvn appfuse:gen-model 
会在model包中生成Employee.java 
查看原代码,原来model中有两个ID的生成策略,如下: 
@Id @GeneratedValue(strategy=IDENTITY) @GeneratedValue(strategy = GenerationType.AUTO) 
删除@GeneratedValue(strategy=IDENTITY),只剩下一个。 
14 由model 生成CRUD 
mvn appfuse:gen -Dentity=Employee 
会生成employeeList.jsp、employeeForm.jsp、EmployeeAction.java 
但是没有自动生成dao与service 而是采用的GenericManager中的方法,解决方法见15 
15 在项目下的pom.xml中查找genericCore,大概在940行 找到 将属性true 改为false 
像这样false 
16 重新运行 mvn appfuse:gen -Dentity=Employee 
在myeclipse中查看代码 dao 与 service也都生成了 
17 运行 mvn jetty:run 
在浏览器中查看界面吧 
18 但是最后还有个问题 就是appfuse页面中 显示乱码 
解决方法:修改pom.xml中 
255行:UTF-8 
260行: *_zh*.properties 
293行:*_zh*.properties 
发现问题依然存在,然后修改display*.properties文件,把里面的文件改成中文,然后mvn jetty:run一下就可以了 
大体知道了appfuse的运行顺序了吧,终于用了两个下午把这个东西调试通过,不过剩下来的时间就是如何在eclipse中使用,并且开发自己的功能了。

原创粉丝点击