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

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

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

    gembin

    OSGi, Eclipse Equinox, ECF, Virgo, Gemini, Apache Felix, Karaf, Aires, Camel, Eclipse RCP

    HBase, Hadoop, ZooKeeper, Cassandra

    Flex4, AS3, Swiz framework, GraniteDS, BlazeDS etc.

    There is nothing that software can't fix. Unfortunately, there is also nothing that software can't completely fuck up. That gap is called talent.

    About Me

     

    如何進入Java SCA軟件的開發


    該文檔是SCA Java項目的開發者指南

    l         一般性指南

    l         獲取源代碼

    l         配置你的開發環境

    l         構建二進制和源代碼發布包

    l         導入SCA模塊到你的開發IDE環境中

    l         理解SCA代碼路徑

    l         編碼指南

    l         測試

    l         Maven構建結構

    l         報告遇到的問題和提供補丁

    l         開發提示

    Ø         Webapp樣例代碼生成Eclipse WTP Web工程

    Ø         為樣例中的程序生成ant的依賴關系

     

    一般性指南

     

    歡迎來到Tuscany SCA java子工程。我們期待你的參與并努力幫助你。在郵件列表中問你問題是非常輕松的。

    這里有些我們這個項目中所使用的一般原則

    l         Java SCA子項目的目的是為了提供一個基于SCA的企業級的服務基礎設施

    l         Tuscany SCA不僅僅是一個參考的實現。我們鼓勵基于SCA原則上的創新。我們所做的許多工作是對規范提供一個反饋。

    l         Java SCA基礎設施應該提供靈活性和可選擇性。它不應該規定死編程模型而是應該支持多種編程模型。

    l         Java SCA基礎設施是非常模塊化的,高度的可擴展性以便用戶可以定制它來適合自己的需求。

     

    獲取源代碼

     

    Java SCA項目的Subversion 庫的地址:https://svn.apache.org/repos/asf/incubator/tuscany/java/sca

    也可以在地址:http://svn.apache.org/viewvc/incubator/tuscany/java上在線查看。

    任何人都可以check out出代碼。你只需要指定用戶名和密碼以便更新subversion庫,當然只有Tuscany提交者才有權限做這些。

    Subversioncheck out代碼

    使用如下的命令:

     Svn checkout http://svn.apache.org/repos/asf/incubator/tuscany/java/sca

    提交修改到Subversion

    任何的Tuscany提交者在svn.apache.org上都應該有一個帳號。在你能提交之前,你需要設置你自己的Subversion的密碼??梢缘顷懙?/span>svn.apache.org,然后運行svnpasswd命令。

    一旦設置了密碼,你就可以用下面的命令提交:

    svn commit

    如果Subversion沒有給出你的用戶名,你可以顯式地告訴它

    svn –username <name> commit

    Subversion會提示你輸入密碼,一旦你輸入后,它將記住密碼。注意你用svnpasswd配置的密碼不是你的shell或其他的密碼。

     

    配置開發環境

     

    首要條件:

    Java SCA要求如下:

    l         JDK 5.0+ (J2SE 1.5.0+)

    l         Apache Maven(2.0.5)(注意:現在使用Maven的版本高于2.0.5可能會在構建Tuscany時出現問題,查看TUSCANY-1676)

    l         Subversion(1.2+)

    構建樹結構

    構建樹有利于模塊化開發和發布。Java SCA當前是使用如下的模塊分層:

    -java

     |-- sca

         |-- demos         SCA 演示應用程序

         |-- distribution     SCA 發布程序

         |-- itest           SCA 集成測試

         |-- modules       SCA 實現的各個模塊 (core, runtimes, contribution, extensions等等)

         |-- samples       SCA 樣例程序

         |-- tools          SCA 工具 (Eclipse插件, wsdl2java, java2wsdl等等)

         |-- tutorial        SCA 教程

     

    自頂向下的構建(推薦方法)

     

    Check out出所有的java源代碼

           svn checkout http://svn.apache.org/repos/afs/incubator/tuscany/java

    構建SCA源代碼非常簡單

           cd java/sca

           mvn

    即使你由一個空的Maven本地庫,它也是會工作的。它總是會有效的,但是當你第一次構建Tuscany項目的時候會下載許多依賴的庫,這個會花費比較長的時間,當然也有可能在獲取依賴庫的時候失敗。

    在從遠程的Maven庫下載的時候會發生偶然性的問題,所以假如mvn失敗是與網絡相關的話,只要再重試一遍就可以解決問題了。

    主干代碼有時候會SNAPSHOT依賴,該依賴從你的本地庫獲取時間。所以如果你用下列命令升級了SNAPSHOT jar,你會看到odd構建失敗信息。

           mvn –U

    一旦你做了自頂向下的構建,你的本地maven庫就組裝好了,你能用maven的離線選項加速構建的過程

           mvn –o

     

    構建二進制和源代碼發布包

     

    二進制和源代碼發布包是在distribution文件夾下運行maven命令創建的,如下:

           cd java/sca/distribution

           mvn clean install –o

    發布包工件生成在distribution文件夾下的target文件夾下。

     

    導入SCA模塊到你的開發IDE環境中

     

    使用Eclipse

           假如這是你第一次用maven m2本地庫用于你的workspaceEclipse里的工作空間),你要告知你的Eclipse工作空間的目錄路徑,命令如下:

           mvn –Declipse.workspace=[path-to-eclipse-workspace] eclipse:add-maven-repo

    為了生成必要的項目文件,你需要使用maveneclipse插件

           cd java/sca

           mvn –Peclipse eclipse:eclipse

    現在,啟動你的Eclipse IDE,選擇FileàImportàExisting projects into Workplace,然后選擇SCA的啟始目錄(例如 java/sca),然后按Finish,就會導入所有的SCA模塊到Eclipse中了。

     

    理解SCA的代碼路線

     

    這里有一個關鍵方法/函數的概述可以幫助你入門SCA java開發。

    (請看我翻譯的SCA編碼入門)

     

    編碼指南

     

    開發java SCA有些簡單的指導原則:

    l         基本的編碼風格在Sun Java編碼標準里描述了,但主要是要保證與你正在升級的代碼保持一致性。

    l         總是在所有的文件包含Apache License的頭信息(源代碼和象xml文檔的資源文件都包含)

    l         包含checkin信息的描述日子信息,比如“修復了某某某問題”

     

    命名規范增強代碼一致性

    文件夾名稱:都使用小寫和-破折號

    n         Maven的工件id = Tuscany-<文件夾的名字>

    包名:模塊中的包名應該包含模塊名,以便很容易地在代碼樹上定位源代碼。例如,java/sca/module/implementation-java就在包org.apache.tuscany.implementation.java.*里。

     

    測試

     

    Tuscany使用普通的junit測試用例來做單元和集成測試,下面就是一個例子,它可以作為寫新的測試用例的一個模板來使用。它演示了在你的測試用例中如何加載Tuscany SCA運行時,同時因為他們是基于junit的,你能選擇從IDE或者從Maven啟動。

    /**

     * Description of your test case and necessary details you find necessary

     */

    public class YourTestCase extends TestCase {

        private SCADomain domain;

        private YourService service;

     

     

        @Override

        protected void setUp() throws Exception {

               domain = SCADomain.newInstance("YourTest.composite");

            service = domain.getService(YourService.class, "serviceName");

        }

     

        @Override

        protected void tearDown() throws Exception {

             &nb%2

    posted on 2008-05-07 10:47 gembin 閱讀(1016) 評論(0)  編輯  收藏 所屬分類: SCASOA

    導航

    統計

    常用鏈接

    留言簿(6)

    隨筆分類(440)

    隨筆檔案(378)

    文章檔案(6)

    新聞檔案(1)

    相冊

    收藏夾(9)

    Adobe

    Android

    AS3

    Blog-Links

    Build

    Design Pattern

    Eclipse

    Favorite Links

    Flickr

    Game Dev

    HBase

    Identity Management

    IT resources

    JEE

    Language

    OpenID

    OSGi

    SOA

    Version Control

    最新隨筆

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    free counters
    主站蜘蛛池模板: 亚洲人成免费电影| 亚洲精品免费观看| 免费萌白酱国产一区二区三区| 日韩免费的视频在线观看香蕉| 五月亭亭免费高清在线| 日韩成全视频观看免费观看高清| 亚洲片国产一区一级在线观看| 亚洲欧洲美洲无码精品VA| 亚洲导航深夜福利| 黄页网站在线观看免费| 在线观看免费播放av片| 噼里啪啦免费观看高清动漫4| 全部免费国产潢色一级| 亚洲AV综合色区无码一区| 四虎亚洲精品高清在线观看| 国产成人无码免费网站| 91嫩草免费国产永久入口| 免费观看午夜在线欧差毛片| 亚洲avav天堂av在线不卡| 亚洲精品GV天堂无码男同| 中文字幕不卡高清免费| 大地资源在线观看免费高清| 亚洲欧洲日产国码一级毛片| 亚洲欧洲日本精品| 又粗又长又爽又长黄免费视频| 亚洲免费网站在线观看| 亚洲伊人久久成综合人影院| 亚洲天堂一区二区三区四区| 免费一级毛片在线播放视频免费观看永久| 久久免费视频99| 伊在人亚洲香蕉精品区麻豆| 亚洲精品福利在线观看| 五级黄18以上免费看| 青青草a免费线观a| 国产亚洲人成无码网在线观看| 亚洲另类无码专区首页| 国产白丝无码免费视频| 免费大黄网站在线观| 亚洲专区中文字幕| a成人毛片免费观看| 国产成人免费永久播放视频平台 |