我們正在為我們的應(yīng)用程序使用 Tomcat8(準(zhǔn)確地說是 Tomcat 8.0.30)和 Java8。帶有 ojdbc7 數(shù)據(jù)庫驅(qū)動程序以及所有其他 jar 包,例如 ucp.jar 和 ons.jar 等,帶有 Oracle 數(shù)據(jù)庫 11g。如果我在我的 Java 應(yīng)用程序(即 Tomcat 中)上啟用“verbose:class”,它會顯示從 ojdbc.jar 和 ucp.jar 文件加載的所有類?,F(xiàn)在我們已將數(shù)據(jù)庫升級到 12c,因此我們將數(shù)據(jù)庫驅(qū)動程序升級到 12.2 ojdbc8.jar。我替換了所有 jars(ojdbc、ucp、ons),但是 Tomcat 抱怨并給出錯誤 NoClassDefFound 異常。當(dāng)我使用相同的詳細 'verbose:class' 選項時,我看不到從 ojdbc8.jar 加載的類。(來自 ucp.jar 的類確實被加載了)。jar 文件就在 $CATALINA_HOME/lib 位置。但不確定為什么 ojdbc8.jar 沒有被加載。感謝您對解決此問題的任何幫助。
1 回答

胡子哥哥
TA貢獻1825條經(jīng)驗 獲得超6個贊
我想收回這個問題。似乎 ojdbc7.jar 的某個地方是在 tomcat 下硬編碼的。因為當(dāng)我將 ojdbc8.jar 重命名為 ojdbc7.jar 時,它就可以工作了。所以它必須在某處進行硬編碼。我還沒有找到,但我會的。它不是 catalina.properties。
添加回答
舉報
0/150
提交
取消