2010-03-19 37 views
2

我有以下設置:使用包

  • 日食
  • 一個標準的Java項目(A)
  • 一個Eclipse插件項目(B)

如何在不首先從A編譯JAR文件並將其添加到B的情況下如何(如果可能)使用B中的A包?

謝謝!

回答

2

java項目A需要從OSGi/Eclipse中知道,以便在設計時可以訪問(即在Eclipse中,包括啓動和調試),然後在運行時。 正確的做法是使一個OSGi包,並在B參考這個:

  • 選擇,單擊鼠標右鍵,項目,PDE工具,轉換爲插件項目...

  • 然後在B中打開manifest.mf並添加(com.example.pack是A中定義的一些你想在B中使用的包):Import-Package:com.example.pack

0

如果你聲明:

  • 從A
    與源項目( 「新」 Java項目/ 「創建Java項目」/ 「從現有源項目」)
  • 第二個項目用 - 來自B
    • 來源
    • 項目依賴包括 「了projectA」

你會得到你所需要的。
(編譯 - 來自A的源代碼 - 仍然需要,但不需要生成jarA)

+0

If I do這,我得到「包裝'bla'不存在這個插件」錯誤在我的MANIFEST.MF試圖導出包裝時es從項目A – Joscha 2010-03-19 20:17:17

+0

@Joscha:你是否在你的plugin.xml中添加了所需的依賴項和/或(在你的情況下)所需的包(通過plug-in.xml編輯器頁面)?請參閱http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.pde.doc.user/guide/tools/editors/manifest_editor/dependencies.htm – VonC 2010-03-19 21:50:08

+0

實際上是的,但那沒有幫助 - 我現在使用eclipse的「鏈接源」機制 - 這似乎工作得很好,但設置很hacky ... – Joscha 2010-03-20 10:21:24