上次看到spring高手問答,不禁得想來學下springside,結果他們的wiki又被關了,googlecode上面只有src的版本,
幸好還有個移動硬盤裏有all-in-one的版本,好了,搞過來,開始學習。。java
剛開始導入eclipse裏面開始報錯web
Plugin execution not covered by lifecycle configuration: org.apache.maven.plugins:maven-antrun-plugin:1.3:run (execution: instrument-hibernate-entity, phase: process-classes)
http://wiki.eclipse.org/M2E_plugin_execution_not_covered有答案,是插件的問題,無法解決,直接permanent ignorespring
在eclipse下面編譯的時候還發現showcase下面的urlrewrite.xml報錯,dtd的裏面http://tuckey.org/res/dtds/urlrewrite3.0.dtd的dtd用瀏覽器訪問時拿不到,必需要加上www,使之成爲http://www.tuckey.org/res/dtds/urlrewrite3.0.dtdshell
在eclipse中儘管都編譯成功了,但不知道怎麼運行,仍是跑DOS下面去運行quick-start.bat,一跑,不少錯誤,一團霧水,只好慢慢研究這個bat文件:
1.把自帶的repository的東西拷到本地庫去,白衣用的xcopy /s/e/i/h/d/y,包含了遞歸和更新比較
2.clean install springside下面的項目到本地庫中去
3.調用eclipse:clean eclipse兩個goal生成eclipse項目,這個步驟把我原先導進去的maven項目改爲了dynamic web項目,害我還得一個個改回來,後來直接rem掉了
4.啓動h2數據庫,h2數據庫有兩種訪問方式,http和tcp,http方式能夠直接進入http形式的h2數據庫管理頁面,tcp是幹嗎用的,給其餘工具使用,搜索了下,也沒發現h2有啥客戶端訪問的方式
5.咱們的重點來了,啓動應用,默認第一個應用是webservice,又分爲兩步
1)導入數據庫,這個是最讓我沮喪的地方,話說當時正在eclipse下面,由於直接跑bat看不清楚錯誤,因此部分工做挪到eclipse下面,結果此時又報錯了數據庫
Buildfile: D:\DevWorkArea\workspace3.7\springside-3.3.4\examples\showcase\bin\build.xml [artifact:dependencies] Downloading: org/springside/springside3-parent/3.3.4/springside3-parent-3.3.4.pom from repository central at http://repo1.maven.org/maven2 [artifact:dependencies] Unable to locate resource in repository [artifact:dependencies] [INFO] Unable to find resource 'org.springside:springside3-parent:pom:3.3.4' in repository central (http://repo1.maven.org/maven2) [artifact:dependencies] An error has occurred while processing the Maven artifact tasks. [artifact:dependencies] Diagnosis: [artifact:dependencies] [artifact:dependencies] Unable to initialize POM pom.xml: Cannot find parent: org.springside:springside3-parent for project: org.springside.examples:showcase:war:null for project org.springside.examples:showcase:war:null [artifact:dependencies] Unable to download the artifact from any repository [artifact:dependencies]
竟然找不到本地maven庫,我已經把maven-ant-tasks-2.1.1.jar拷到eclipse自帶目錄下面了,順便提下,白衣的導庫,備份都是經過ant腳原本作的,很酷,用一個叫作dbunit的task來完成,酷歸酷,報錯依然存在,只好回到dos下面來玩,問題仍是同樣,build失敗,我想這應該是沒去找本地maven庫的問題,由於我改過默認的位置,看到springside自帶的ant下面有兩個xml,分別是fetch.xml和get-m2.xml(想問下@XiuCalvin,這兩個文件是幹嗎用的,由於後來幾乎沒用到過,若是說get-m2.xml是去獲取maven的話,事實上在腳本里maven都出如今ant前面),研究了半天沒發現改什麼地方。搜索了下,有人說設置M2_REPO變量,設置了,依然無效,查看了官網,看得我很心煩,都是英文,google翻譯的像狗屎同樣,沒辦法,只好把改爲默認位置,竟然運行成功了,可我恰恰不喜歡默認位置,只好繼續看maven ant task的官網,在reference裏找到localpository的配置方法
因而我在apache
<artifact:dependencies pathId="project.lib"> <pom file="../pom.xml" /> </artifact:dependencies>
在pom前面加上了<localRepository path="D:\DevInstalls\M2REPO" />居然成功了,這個問題實在是鬱悶,我想不通爲何在eclipse下面明明看到本地庫,卻跑不了,如今想來,對於ant來講,它根本不去管settings.xml下面的內容。
2)直接run。瀏覽器
至此,部署完成,測試經過eclipse