子在川上曰

            逝者如斯夫不舍晝夜
          隨筆 - 71, 文章 - 0, 評論 - 915, 引用 - 0
          數(shù)據(jù)加載中……

          在RCP項目中找不到JAR包的異常的解決

          陳剛/www.chengang.com.cn 2006-02-17

            前段時間看到有版友,因為RCP中找不到JAR包的問題,弄得焦頭爛額。由于沒有版友的開發(fā)環(huán)境,所以也很難給他提出錯誤原因在哪。授人以魚,不如授人以漁。今天我也遇到了一次了,就把我解決這個問題的思路寫出來,以供參考。
           
          今天RCP加入一個新的模塊,其中需要用DOM4J讀入一個XML文件。進行的過程如下
           
          1.將dom4j-1.6.jar復制到LIB目錄中
           
          2.在maven的project.xml中加入了引用,這是為了在構(gòu)建項目時,從jar倉庫自動將dom4j-1.6.jar復制到項目lib目錄。
            <dependency>
             <groupId>dom4j</groupId>
             <artifactId>dom4j</artifactId>
             <version>1.6</version>
             <properties>
              <plugin.library>true</plugin.library>
             </properties>
            </dependency>
           
          3.在項目下maven update_libs ,將項目的lib庫更新一下(這時第1步手動復制可以不用,如果你是用ANT或手工構(gòu)建項目的,第2、3步省略)
           
          4. 在build.properties加入對dom4j-1.6.jar的引用
          jars.extra.classpath = lib/commons-codec-1.3.jar,\
                                 lib/dom4j-1.6.jar,\
                                 lib/jboss.jar,\
           
          這時已經(jīng)可以在Eclipse中開發(fā)dom4j的程序了,。在Application環(huán)境下做了dom4j的測試,沒有問題。雖然沒有在.classpath中加入對dom4j-1.6.jar的引用,但項目屬性中的"java build path"->"Libraries"中的"Plug-in Dependencies"中已經(jīng)有了對dom4j-1.6.jar的引用。
           
          然而運行RCP程序進行測試時卻出現(xiàn)了錯誤,界面和console沒有提示錯誤原因。是程序錯誤嗎?于是將程序注釋至最簡,還是不行。難道是包沒找到的錯誤?哦忘記去看看錯誤日志了,于是轉(zhuǎn)到runtime-adminconsole\.metadata目錄下打開.log文件,果然是類未找到錯誤異常,如下:
          java.lang.NoClassDefFoundError: org/dom4j/io/SAXReader
           
          但application下怎么能找到dom4j包呢,難道有什么地方的對dom4j我沒加上?于是打開plugin.xml,在它的圖形界面里翻了翻,發(fā)現(xiàn)runtime選項卡的classpath沒有加入對dom4j包的引用。runtime項顧名思議就是運行時的依賴項。在這里加上對dom4j包的引用后,錯誤解除。
           
          加的方法有兩種,最簡單的通用圖形界面加,另外也可以通過META-INF/MANIFEST.MF文件來加。我習慣直接操作文件,當初為了加入dom4j包的引用在項目根目錄下翻了一遍,卻沒注意META-INF目錄下還有一個配置。


          posted on 2006-03-07 14:32 陳剛 閱讀(1712) 評論(0)  編輯  收藏 所屬分類: Eclipse

          主站蜘蛛池模板: 溧阳市| 五莲县| 佛学| 民县| 西吉县| 增城市| 临夏市| 江永县| 达尔| 鄂温| 余姚市| 齐河县| 简阳市| 白水县| 沙湾县| 肇源县| 达拉特旗| 平陆县| 泾川县| 佛坪县| 綦江县| 泌阳县| 满洲里市| 平阳县| 木里| 慈利县| 长阳| 桃源县| 和田市| 瑞金市| 白银市| 邵阳市| 岫岩| 南部县| 区。| 库车县| 望奎县| 黄山市| 鹰潭市| 南乐县| 花垣县|