1. 程式人生 > >關於spring boot整合mybatis使用oracle資料庫出現could not load:oracle.jdbc.driver.OracleDriver問題的終極解決方案

關於spring boot整合mybatis使用oracle資料庫出現could not load:oracle.jdbc.driver.OracleDriver問題的終極解決方案

  由於開發用到資料庫為oracle,特地從外網下載下來與spring整合的mybatis的jar包,接下來本以為輕鬆愉快的加入oracle驅動的pom依賴即可,結果報錯,經查詢發現Maven倉庫由於版權的原因沒有oracle的驅動jar包。

  當時考慮的是Maven專案是否可以像普通的web專案一樣在src/main/webapp/WEB-INF下建立一個lib檔案,將oracle驅動放進去之後buildpath,於是有趣的情況出現了,在內網我和同事同時進行測試,結果一個成功另外一個失敗,很是有趣(新增jar包的方式是一樣的),失敗的總是報錯could not load:oracle.jdbc.driver.OracleDriver這個問題,,但是明明載入了驅動了,確實找不到jar包,嘗試了各種方案這個錯誤一直存在遂放棄。
  
  於是我換了個角度思考,既然不知道Maven專案是否支援通過普通方式新增jar包,那麼不如將ojdbc的驅動直接成為Maven識別的存在即可,於是上網查了下,果然可以將一個jar包安裝到Maven本地倉庫之後通過pom新增相關依賴來實現。於是先查看了Maven倉庫中ojdbc的描述,見下圖
  這裡寫圖片描述

  之後從網路上隨便下載ojdbc14 jar放到本地任意一個資料夾下,這裡我放在了一個F盤下的一個資料夾下,然後執行下面這個命令即可,其中group id和artificatId分別代表在Maven倉庫下的一級資料夾和二級資料夾,執行成功後會將指定的jar包存放到Maven本地倉庫
  這裡寫圖片描述

  接下來只需要在pom檔案中將上面的依賴新增進去即可,此時這樣就會識別,這樣應該絕對不會出現無法載入oracle驅動了,從根本上解決了這個特別奇葩的問題。之前在本地用的是mysql資料庫做測試沒出現問題,所以oracle雖然功能強大吧但是還真是各種奇葩的存在,這下打war包就OK了,能連資料庫接下來就簡單多了嘛哈哈
  那麼,這篇就到這裡ORZ