Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java.lang.ClassNotFoundException:com.microsoft.sqlserver.jdbc.SQLServerDriver,尽管它是gradle.build文件的依赖项_Java_Sql Server_Gradle_Intellij Idea_Jdbc - Fatal编程技术网

java.lang.ClassNotFoundException:com.microsoft.sqlserver.jdbc.SQLServerDriver,尽管它是gradle.build文件的依赖项

java.lang.ClassNotFoundException:com.microsoft.sqlserver.jdbc.SQLServerDriver,尽管它是gradle.build文件的依赖项,java,sql-server,gradle,intellij-idea,jdbc,Java,Sql Server,Gradle,Intellij Idea,Jdbc,我已经阅读了前10-15个问题以及以下问题的答案 然而,我仍然不明白为什么它不起作用。 解决此问题的常用步骤: 确保在构建/依赖项管理工具(Ant/Maven(pom.xml)/Gradle(gralde.build))中将jar作为依赖项添加到 是的,就我而言: dependencies { compile group: 'com.microsoft.sqlserver', name: 'mssql-jdbc', version: '7.4.0.jre8' testCompil

我已经阅读了前10-15个问题以及以下问题的答案
然而,我仍然不明白为什么它不起作用。
解决此问题的常用步骤:

  • 确保在构建/依赖项管理工具(Ant/Maven(pom.xml)/Gradle(gralde.build))中将jar作为依赖项添加到 是的,就我而言:

    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文件中 和gradlebuild命令可以正常工作

  • 另一种解决方案是从 然后将其添加到类路径。这个解决方案是不可取的,我不想手动完成一些必须由构建工具完成的事情

  • 所以问题是为什么我会出现错误“java.lang.ClassNotFoundException:com.microsoft.sqlserver.jdbc.SQLServerDriver”,而我在dependencies选项卡中看不到这个jar

    尽管jar在依赖项部分的我的build.gradle文件中作为编译时依赖项和测试时依赖项提到:

    供参考: 在我的代码中就是这样调用的:

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

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

    通过单击IDEA的“渐变”选项卡中的“重新导入”按钮,可以重新导入渐变文件。您可以通过单击Gradle选项卡中的Gradle设置按钮并启用“根据生成脚本文件中的更改自动导入此项目”来启用自动导入


    在单独的not上,如果您也将依赖项声明为
    compile

    您是否尝试重新导入gradle文件(单击IDEA的gradle选项卡中的reimport按钮),则不需要声明
    testCompile
    )。顺便说一句:如果您也将依赖项声明为
    compile
    ,那么您不需要声明
    testCompile
    。另外,当您的问题是关于Microsoft SQL Server时,为什么要用mysql对此进行标记?您是对的,我将修复标记。我已经修复了标记。@markrottveel或者如果您愿意,我可以删除该问题。