<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    City of Dream

    實踐出真知

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      2 隨筆 :: 1 文章 :: 35 評論 :: 0 Trackbacks
    Appfuse是一個融合當前各種框架的web應用最佳實踐。從名字可以看出:App=框架應用,fuse=熔合。

    Appfuse涉及的東西較多,也大都有實用價值。這系列文會一一道來,一是分享,二是為了自己記憶得更加深刻。我覺得,任何東西說開了都很簡單。所以會盡量用簡單直白,使自己能看懂的敘述方式說出來。

    如有錯誤,希望大家本著共享的精神指出。謝謝!(轉載請保留:shenleimail@vip.qq.com

    安裝部署篇:

    Appfuse的最新版本是2.0.1,基于maven管理并發布的。因此,在安裝Appfuse之前,我們需要了解maven的一些基礎知識。

    maven的核心是對POM(Project Object Model)項目對象模型的管理。就我的理解來看,項目對象模型應該包括了依賴項(所需外部jar包)、source、resource等項目相關的對象,maven用一個生命周期的概念對它們進行管理。所以在maven的命令里面包含了發布、生成、清理、運行、刪除等命令。而依賴項并不是一個項目所獨有的,可能有多個項目用到同一個jar包。因此在maven的概念中依賴項又和POM互相獨立。如圖:


    此主題相關圖片如下:


    理解了maven的生命周期管理,再去看它的命令和操作,都是和相應的生命期對應的。其中有一些通過插件方式實現,比如用jetty運行Appfuse,命令為:mvn jetty:run-war

    下面只介紹和Appfuse安裝相關的maven操作:

    1、下載并解壓maven最新版,不得低于2.0.6(假設路徑為:E:\soft\maven);

    2、設置環境變量:M2_HOME=E:\soft\maven,將%M2_HOME%/bin加入PATH中;

    3、dos模式下輸入mvn -version,能看到正確的版本信息為止(可能需要重啟);

    安裝好maven之后,需要建立本地依賴項庫。到[url=https://appfuse.dev.java.net/servlets/ProjectDocumentList?folderID=8417&expandFolder=8417&folderID=0]https://appfuse.dev.java.net/servlets/ProjectDocumentList?folderID=8417&expandFolder=8417&folderID=0[/url]下載[url=https://appfuse.dev.java.net/files/documents/1397/77087/appfuse-dependencies-2.0.1-with-source-and-javadoc.zip]Dependencies (with source and javadoc)[/url] 142.83M,解壓到某個地方。

    到E:\soft\maven\conf中打開setting.xml文件,在<settings>節點下加入<localRepository>你解壓的路徑</localRepository>。

    到此為止,準備工作已完成。

    新建一個目錄,準備安放Appfuse項目工程。例如為:D:\Project\appfuse2.0.1

    在dos模式下進入此目錄,確保在線的情況下運行如下命令(這里以Spring MVC Basic為例,如要其他類型,請參考Appfuse官方文檔):

    mvn archetype:create -DarchetypeGroupId=org.appfuse.archetypes -DarchetypeArtifactId=appfuse-basic-spring -DremoteRepositories=http://static.appfuse.org/releases -DarchetypeVersion=2.0.1 -DgroupId=com.webstudio.app -DartifactId=appfuse-spring

    com.webstudio.app及appfuse-spring這兩個變量是可以修改的。com.webstudio.app表示項目根路徑,appfuse-spring表示項目名稱及新建的文件夾名稱。

    運行過程中,會看到一系列的waring警告,不用管。等看到:Builde Success,表示成功了。maven會在D:\Project\appfuse2.0.1下新建appfuse-spring目錄,里面含有最重要的pom.xml文件。

    修改pom.xml,在最下面有數據庫的配置。若你是mysql數據庫,則很簡單,只需修改用戶名和密碼(默認為root和空)。若是其他數據庫,請參照pom.xml里面的數據庫配置文件進行替換修改。

    修改好之后,在dos模式下進入D:\Project\appfuse2.0.1\appfuse-spring,運行mvn appfuse:full-source。這也是個很快的過程。

    之后,在相同的路徑下執行:mvn jetty:run-war。jetty是一個jsp容器(類似Tomacat),以jar包的形式跟隨項目發布,方便部署。此命令會打包生成appfuse-spring-1.0-SNAPSHOT.war并測試發布,在測試時會有一些異常信息。不用理會,只是一些測試數據沒有準備好。

    等到一切就緒(出現[INFO] Starting scanner at interval of 3 seconds.),打開你的瀏覽器,輸入http://locathost:8080。如果看到Appfuse的登錄頁面,那么恭喜你,你已經順利的安裝了Appfuse。maven是個不錯的工具,但我們不能用maven來做所有事。軟件需要部署到IDE上才有更好的開發效率,maven可以充當IDE的一個輔助工具。目前來看,我更傾向用maven管理依賴項,用IDE管理軟件生命周期。

    eclipse和netbeans都是不錯的IDE,但遺憾的是,他們的maven插件機制還有所欠缺。從表面來看,netbeans要比eclipse做得更好,因為它可以直接建立maven項目,也可以在命令中使用maven插件機制build項目(“run”始終有點問題)。但從實際來說,我更傾向eclipse的方式,只讓maven管理依賴項,生命周期還是交給IDE更加方便。

    appfuse官網上關于如何使用IDE部署和調試項目語焉不詳,只是建議以mvn jetty:run-war的方式發布。這是脫離項目實際的,很多人都習慣了在IDE中編輯和調試項目。文檔中關于appfuse在eclipse的部署實踐不甚令人滿意,我們需要重新動手解決這一切。

    我的環境是:eclipse+myeclipse+tomcat6

    首先,用maven的方式。在項目路徑下運行:mvn eclipse:eclipse建立適合eclipse環境的工程。

    在eclipse中導入項目,運行一次mvn jetty:run-war并確保項目已正常運行,這樣會在target目錄下生成部署需要的文件夾和war包。

    選擇項目屬性,在“java build path”——“source”中去掉“src/main/webapp”文件夾。

    在文件夾中打開項目路徑下的appfuse-spring-1.0-SNAPSHOT目錄,將WEB-INF/classes下的所有資源文件拷貝并覆蓋到src/main/resources下,并將WEB-INF/lib復制到src/main/webapp/WEB-INF/lib中。

    用myeclipse的“add myeclipse web capabilities”命令建立web模塊。路徑指引到src/main/webapp中。在項目下新建目錄webapp,采用link folder的方式鏈接到src/main/webapp。這樣可以讓webapp在最上層,方便編輯。

    用myeclipse將webapp發布到tomcat中,還需要注意一個問題,不能把所有依賴jar包都發布,否則會引起包沖突。在這里選擇項目屬性——Myeclise——Web——Deployment——Libirary Deployment Policies中去掉所有勾。

    現在eclipse中運行tomcat,不出意外就順利部署成功了。這種方式保留了采用maven發布和在eclipse中發布兩種方式,在激活eclipse的maven插件后,也能用maven來管理依賴項。

    對于netbaens,個人建議采用普通的web應用方式部署,將剛才在eclipse中部署好的文件一一對應拷貝過去即可。不建議用netbeans的maven插件進行部署,因為那實在不大好用。

    安裝部署篇就到這里,下一篇正式進入Appfuse的世界。

    ........to be continue
    posted on 2008-02-29 12:53 蕭少英 閱讀(4247) 評論(6)  編輯  收藏

    評論

    # re: [原創]Appfuse使用經驗雜談——安裝部署篇 2008-02-29 13:18 魔域私服
    學習了````````  回復  更多評論
      

    # re: [原創]Appfuse使用經驗雜談——安裝部署篇 2008-02-29 14:14 春眠不覺曉,日升不得了
    繼續關注.....  回復  更多評論
      

    # re: [原創]Appfuse使用經驗雜談——安裝部署篇 2008-02-29 16:32 逝者如昔
    期待著  回復  更多評論
      

    # re: [原創]Appfuse使用經驗雜談——安裝部署篇 2008-03-02 14:47 xifu
    坐下來等。。。  回復  更多評論
      

    # re: [原創]Appfuse使用經驗雜談——安裝部署篇 2008-03-03 08:51 HuangYy
    我弄BASIC-JSF ,好像弄不起來,不知道各位如何?
    請求幫助,郵箱5huangyy@gmail.com  回復  更多評論
      

    # re: [原創]Appfuse使用經驗雜談——安裝部署篇 2008-05-07 13:44 migrant423
    照樓主的辦法根本就運行不起來。  回復  更多評論
      


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 人妻在线日韩免费视频| 人妻视频一区二区三区免费| 亚洲av无码专区在线播放 | 国产免费播放一区二区| 亚洲卡一卡2卡三卡4卡无卡三| 一二三四免费观看在线视频中文版| 爱爱帝国亚洲一区二区三区| 亚洲国产精品福利片在线观看| 色播精品免费小视频| 一级午夜a毛片免费视频| 亚洲精品91在线| 亚洲精品无码久久不卡| 午夜免费1000部| 国产成人无码精品久久久久免费| 亚洲男人的天堂在线| 亚洲国产一区二区视频网站| 在线观看H网址免费入口| 精品熟女少妇aⅴ免费久久| 国产精品亚洲综合久久| 亚洲αv久久久噜噜噜噜噜| 精品国产精品久久一区免费式| a毛看片免费观看视频| 在线播放亚洲精品| 亚洲乱码一二三四区麻豆| 亚洲午夜久久久影院伊人 | 亚洲AV区无码字幕中文色| 国产高清视频在线免费观看| 日本免费大黄在线观看| 猫咪www免费人成网站| 国产成+人+综合+亚洲专| 亚洲av日韩av高潮潮喷无码 | 亚洲一区二区三区香蕉| 成人a视频片在线观看免费| 日本免费污片中国特一级| 一区二区免费在线观看| 亚洲av无码日韩av无码网站冲| 亚洲成在人线中文字幕| 亚洲AV无码一区二区三区DV| 久久青青草原亚洲av无码| 免费一看一级毛片| 女人被男人桶得好爽免费视频|