簡體   English   中英

Eclipse插件項目中的庫

[英]Libraries in Eclipse plugin Project

我想將Apache commons.io用於Eclipse中的插件項目。 我將.jar添加到了構建路徑:

(屬性-> Java構建路徑->庫)

但是,當我嘗試測試我的項目時,出現以下錯誤:

org / apache / commons / io / FileUtils的NoClassDefFoundError。

我認為Eclipse不會復制該庫,或者我想告訴項目復制該庫。

我怎么解決這個問題? 我正在嘗試編寫一個導出插件,其中將完整文件夾復制到另一個文件夾。

首先查看是否已經有一個提供此庫的eclipse插件。 對於Apache Commons,您會找到一個。 如果它們像apache commons一樣常見,請使用插件編輯器並添加所需庫的依賴關系;)

其他明智的添加目錄將其稱為“ libs”,然后在其中添加jar。 然后將它們放在插件編輯器中,放入您的類路徑。 為此,請使用選項卡“運行系統”,並使用“類路徑”部分中的添加按鈕。

這將最終像這樣的build.properties

source.. = src/
output.. = bin/
bin.includes = META-INF/,\
               lib/commons-csv.jar,\
               lib/commons-lang-2.6.jar,\
               lib/commons-io-2.0.1.jar

以這種方式添加的庫將被導出到您的插件中,並將保留在您的類路徑中。

您項目的類路徑將自動更新。

對於重要的庫(如DB-Driver),最佳實踐是將它們放在一個額外的插件項目中,該項目不會擴展UI。 這樣的插件將只有一個build.properties。 然后,您可以將此庫插件用作其他插件的依賴項。

沒錯,Eclipse不會在項目構建路徑上復制資源。 您需要在classpath上使用它們。 為了那個原因:

  • 手動將罐子復制到應用程序可以始終訪問它們的位置( brittle setup

  • 或使用antmaven等構建工具( recommended

您是否聽說過目標定義
這正是您所需要的,仍然可以將其與Maven(Tycho)一起使用...在開發插件時,應始終嘗試管理部門。 通過目標定義,永遠不要在類路徑中添加jar

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM