2009-09-03 91 views
8

我正在使用Netbeans編寫Scala和Java。從Java調用Scala代碼?

Netbeans爲Scala項目生成了一個.jar文件。我試圖在Java項目中導入該文件。但是我無法從該.jar文件導入任何類到我的Java項目中。

我也嘗試導入scala-library.jar到java項目,並可以從該jar中導入類。

我想在Scala中編寫我的庫,然後公開一個只涉及Java內容的小接口,然後編寫一個Java包裝器,以便人們可以將它用作Java包。那可能嗎?我該怎麼做?

非常感謝。

+1

如果您確實有時間追查發生了什麼問題,將答案放在這裏會很有幫助。 – 2009-09-03 13:30:12

回答

8

這樣做應該沒有問題。

  1. 您是否驗證(例如使用WinZip或jar實用程序),您的.jar文件實際上包含了相關的.class文件? (使用jar tvf mylib.jar進行檢查)
  2. 如果您已驗證jar文件中存在正確的.class文件,那麼您看到的運行時錯誤是什麼?這是一個NoClassDefFoundError?如果是這樣,哪個class找不到?你如何在你的(Java)代碼中引用(Scala)類?
+0

哦,謝謝。原來,這是由於我對Java的知識不足。我將我的包與scala-library.jar進行了比較,然後執行以下操作:1.確保所有類和子包都在同一個根包下2.編輯MANIFEST.MF文件,將scala-library.jar中的一個作爲一個示例然後我可以從Java調用我的Scala類。我仍然不清楚問題來自哪裏,但我現在很匆忙。我會在稍後找到。非常感謝你 :) – Phil 2009-09-03 07:52:38