因此,我從一個從eclipse正確構建和調試的Web服務項目(只是一個動態Web項目)開始。我們已經將一大堆我們想要放入共享庫的公共代碼拉出來,所以現在這些類將進入Web項目引用的單獨的jar項目。Eclipse調試時類路徑問題:如何將依賴項目的輸出包含到Web項目的運行時類路徑中?
在web項目上,我做了Project-> Properties-> Java Build Path-> Projects-> Add並添加了jar項目。這正確地解決了所有編譯時類路徑問題,一切都很好。但是在運行時,當tomcat服務器啓動時,spring會嘗試注入jar文件中包含的一些類,並且得到一個NoClassDefFoundError。
我的.class文件和屬性文件以及META-INF目錄的內容都顯示在./build目錄中,但是我的WEB-INF/lib目錄似乎是就地引用的,並且jar依賴項不會不會被複制到它以顯示爲Web應用程序庫的一部分。
告訴eclipse其他jar項目需要在運行時可用於tomcat的神奇咒語是什麼?從我們的ant構建腳本中,我們首先將其他項目構建到WEB-INF/lib中,一切正常,但不能用於eclipse調試。
這似乎已經成功了,但我不確定你對它是一個「實用工程」項目所說的話。有什麼我可以在我的.project文件或.settings /中看到,讓我知道這是正確的類型? – 2008-11-28 22:12:25
實用程序項目是Java項目,儘管它們更適合J2EE環境。它們表示您的代碼(不是第三方JAR),它們在企業應用程序中的多個項目之間共享。通常這些是跨多個EJB使用的類,通常是單個Web模塊。 – 2008-11-28 22:25:59