18步啟動(dòng)appfuse2.0.2
1、 安裝 jdk 5+ maven 2.09 mysql 5.x2、 配置 JAVA_HOME M2_HOME
在path中添加%JAVA_HOME%\bin;%M2_HOME%\bin
3、 將下載下來(lái)的appfuse-dependencies-2.0.2解壓到.m2/repository 下面
4 、 創(chuàng)建自己存放項(xiàng)目的目錄 例如 c://appfuse
5、 cd c://appfuse
6、 運(yùn)行創(chuàng)建骨架的命令,不同的框架選用不同的命令,以下是Struts2 Basic的創(chuàng)建命令
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
說(shuō)明:DartifactId:項(xiàng)目名稱(chēng) DgroupId:包結(jié)構(gòu)
運(yùn)行完以上命令,將會(huì)生成c://appfuse/qshin
7、 cd c://appfuse/qshin 運(yùn)行 mvn
說(shuō)明:運(yùn)行到[cargo:start {execution: start-container}] 會(huì)比較慢 會(huì)下載tomcat6到 C:\Documents and Settings\Johnson Lee\Local Settings\Temp\cargo\installs
發(fā)生錯(cuò)誤
解決方法:在pom.xml文件找到Cargo settings塊 手動(dòng)下載tomcat壓縮包 替換 C:\Documents and Settings\Johnson Lee\Local Settings\Temp\cargo\installs中的
運(yùn)行通過(guò)
8、 剩下的命令就是運(yùn)行程序了 mvn jetty:run-war 好了 可以運(yùn)行 http://localhost:8080了
熟悉清爽的界面出現(xiàn)在眼前
9、 開(kāi)始構(gòu)建吧
運(yùn)行 mvn war:inplace 將war中的文件放入 自己的項(xiàng)目的webapp目錄
運(yùn)行 mvn appfuse:full-source 出現(xiàn)錯(cuò)誤 查找了原因 據(jù)說(shuō)是ant 1.7.0的bug 1.7.1會(huì)解決 空格的問(wèn)題
解決方法:配置 maven/cong/setting.xml <localRepository>C:\appfuse\repository</localRepository>
我將原來(lái).m2/repository 下的文件拷貝到了C:\appfuse\repository 使用此處的
重新運(yùn)行mvn appfuse:full-source 通過(guò) 重新看看C:\appfuse\qshin\src\main\java下面吧 將org.appfuse的源文件都copy過(guò)來(lái)了
并且讓我開(kāi)心的是 都改名為com.qhin.app了 dao model service util webapp 都在下面了 高興
10、 運(yùn)行mvn install eclipse:eclipse 生成eclipse的項(xiàng)目文件 當(dāng)然也可以用idea netbeans
這個(gè)過(guò)程會(huì)慢點(diǎn) 因?yàn)橐螺d一些依賴(lài)的jar
11、 導(dǎo)入myeclipse
12 、 創(chuàng)建表
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 運(yùn)行mvn appfuse:gen-model
會(huì)在model包中生成Employee.java
查看原代碼,原來(lái)model中有兩個(gè)ID的生成策略,如下:
@Id @GeneratedValue(strategy=IDENTITY) @GeneratedValue(strategy = GenerationType.AUTO)
刪除@GeneratedValue(strategy=IDENTITY),只剩下一個(gè)。
14、 由model 生成CRUD
mvn appfuse:gen -Dentity=Employee
會(huì)生成employeeList.jsp、employeeForm.jsp、EmployeeAction.java
但是沒(méi)有自動(dòng)生成dao與service 而是采用的GenericManager<Employee, Long>中的方法,解決方法見(jiàn)15
15、 在項(xiàng)目下的pom.xml中查找genericCore,大概在940行 找到 將屬性true 改為false
像這樣<amp.genericCore>false</amp.genericCore>
16、 重新運(yùn)行 mvn appfuse:gen -Dentity=Employee
在myeclipse中查看代碼 dao 與 service也都生成了
17、 運(yùn)行 mvn jetty:run
在瀏覽器中查看界面吧
18、 但是最后還有個(gè)問(wèn)題 就是appfuse頁(yè)面中 顯示亂碼
解決方法:修改pom.xml中
255行:UTF-8
260行: *_zh*.properties
293行:<exclude>*_zh*.properties</exclude>
發(fā)現(xiàn)問(wèn)題依然存在,然后修改display*.properties文件,把里面的文件改成中文,然后mvn jetty:run一下就可以了
轉(zhuǎn)載自:http://www.pben.cn/main.htm?action=read&bid=33&postID=8a8181871e4825c2011ecb2c9c070e18
http://www.pben.cn/
posted on 2009-12-24 13:58 chenlh 閱讀(173) 評(píng)論(0) 編輯 收藏 所屬分類(lèi): Appfuse