无法在 Tomcat 中加载 net.sourceforge.jtds.jdbc.Driver

Posted

技术标签:

【中文标题】无法在 Tomcat 中加载 net.sourceforge.jtds.jdbc.Driver【英文标题】:Cannot load net.sourceforge.jtds.jdbc.Driver in Tomcat 【发布时间】:2014-07-23 12:59:52 【问题描述】:

我发现还有其他类似的问题,但没有一个能涵盖我的确切情况。

我正在将基于 Eclipse 的 Web 服务从 FreeBSD 9.2 和 Tomcat7 迁移到 FreeBSD 10.0 和 Tomcat8。我已经在新服务器上部署了我的 .war 并且它运行,直到它必须执行 SQL 访问,它失败并显示“无法加载 net.sourceforge.jtds.jdbc.Driver”。我不确定缺少什么。我们不在 lib 中加载驱动程序,它全部捆绑到一个 .war 文件中(在旧机器上运行良好)。我已经搜索了 tomcat 配置文件,看看是否有任何需要设置的指针,但我是空的。

【问题讨论】:

【参考方案1】:

从here 下载 jTDS 驱动程序。将其复制到 Tomcats lib 文件夹中。您确定您没有使用 JNDI 来检索数据源吗?如果不是这种情况,最好在您的项目中而不是在服务器上包含特定于应用程序的 jar,以避免与其他项目的版本冲突。

【讨论】:

完美。现在启动并运行。它是一个单一的应用服务器,所以不用担心版本冲突。我仍然有点困惑为什么它可以在旧服务器上运行,它在 lib 中没有 jTDS 驱动程序......【参考方案2】:

下载 ojdbc6 或 ojdbc14(对 Tomcat8 有用) 复制到 apache-tomcat-(version) >> lib 文件。

并在 Eclipse 中在 Build Path >> order & export 中添加 ojdbc。

【讨论】:

以上是关于无法在 Tomcat 中加载 net.sourceforge.jtds.jdbc.Driver的主要内容,如果未能解决你的问题,请参考以下文章

MyEclipse 8.5 中加载的Tomcat 6.0 无法启动?

尝试在tomcat 9中加载maven项目,显示A child container failed during start

当存在 2 个版本的库时按需在 tomcat 中加载类?

Tomcat:模块版本冲突。模块 [groovy-all 在 2.3.7 版本中加载,您正在尝试加载 2.4.3 版本

无法在 Visual C++ 中加载 SQL 驱动程序(但在 QtCreator 中加载)

无法在捆绑包中加载 NIB