2017-04-21 213 views
1

的類路徑我有一個商業發佈,提供通過JDBC連接到許多不同的數據庫的能力Maven項目。通常,客戶將必要的JDBC驅動程序放入其Web服務器的lib目錄中,以使其可訪問。由於許可證類型,我們不能在pom中包含某些jdbc驅動程序,例如Oracle。添加非託管依賴於Eclipse的Maven項目

我想在Eclipse運行時使用的應用程序一個Oracle JDBC連接。我需要在類路徑上獲取JDBC jar,出於某種原因,如果不通過maven dependency將其添加到pom.xml中,似乎無法做到這一點。

我想肯定要去屬性 - > Java構建路徑 - >庫 - >添加外部JAR會工作。當以這種方式添加到構建路徑時,它會在包資源管理器中正確顯示,但如果在運行時運行Class.forName,則會引發ClassNotFoundException。爲什麼在這一點上不在班級路上?

+0

將它添加到您的CLASSPATH環境變量以及它通過該變量引用! –

+0

也許這將幫助你:http://stackoverflow.com/questions/1074869/find-oracle-jdbc-driver-in-maven-repository –

回答

2

看看下面的描述article,它提供了將類路徑設置爲拋出代碼的快捷方式,或者有一個適度的解決方案來管理你的類路徑依賴關係,然後再到一個完整而專業的解決方案來管理和甚至可以自動執行你的類路徑依賴關係 - 如果需要爲更大的項目自動執行這些依賴項。

如果您不打算頻繁更改任何jar版本,那麼設置CLASSPATH變量是一種更好的方法,否則您可能會花費數小時的寶貴時間來調試問題的錯誤方面。

希望這可以幫助您瞭解並解決您的問題!

+0

有道理,我得到了它通過將其添加至運行的類路徑的工作/調試服務器的配置,而不是項目。但我也喜歡這種方法。謝謝 – nmb1106

+0

樂意幫忙,@ nmb1106 !!! –

0

我將包括相關的罐子到聚甲醛,而且使<optional>。然後,它們不會被打包到應用程序中,而是可以由用戶提供。

相關問題