gpt4 book ai didi

java.lang.ClassNotFoundException : com. microsoft.sqlserver.jdbc.SQLServerDriver 尽管事实上它依赖于 gradle.build 文件

转载 作者:行者123 更新时间:2023-12-02 09:25:11 26 4
gpt4 key购买 nike

我已阅读以下查询的前 10-15 个问题及其答案 https://stackoverflow.com/search?q=com.microsoft.sqlserver.jdbc.SQLServerDriver%22
但是,我还是不明白为什么它不起作用。
解决此问题的常规步骤:

  1. 确保该 jar 作为依赖项添加到构建/依赖项管理工具 (Ant/Maven (pom.xml)/Gradle(gralde.build))中是的,这就是我的情况:

    dependencies {
    compile group: 'com.microsoft.sqlserver', name: 'mssql-jdbc', version: '7.4.0.jre8'
    testCompile group: 'com.microsoft.sqlserver', name: 'mssql-jdbc', version: '7.4.0.jre8'
    }

    build.gradle文件中和 gradle build 命令正常工作,没有异常。

  2. 另一种解决方案是从 https://learn.microsoft.com/en-us/sql/connect/jdbc/download-microsoft-jdbc-driver-for-sql-server?view=sql-server-ver15 手动下载 jar 文件。然后将其添加到类路径中。这个解决方案是不可取的,我不想手动执行必须由构建工具完成的操作。

所以问题是为什么我收到错误“java.lang.ClassNotFoundException:com.microsoft.sqlserver.jdbc.SQLServerDriver”并且我看不到这个jar在依赖项选项卡中 enter image description here

尽管事实是,该 jar 在我的 build.gradle 文件的依赖项部分中被提及为编译时依赖项和测试时依赖项: enter image description here

仅供引用:这就是我的代码中的调用方式:

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

最佳答案

看来IntelliJ还没有导入这些依赖项的添加。这通常意味着自动导入被禁用。

您可以通过单击 IDEA 的 gradle 选项卡中的重新导入按钮来重新导入 gradle 文件。您可以通过单击 gradle 选项卡中的“Gradle 设置”按钮并启用“在构建脚本文件发生更改时自动导入此项目”来启用自动导入。

另外,如果您还将依赖项声明为 compile,则无需声明 testCompile

关于java.lang.ClassNotFoundException : com. microsoft.sqlserver.jdbc.SQLServerDriver 尽管事实上它依赖于 gradle.build 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58391158/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com