【问题标题】:GRAILS 3 sql express: no driverGRAILS 3 sql express:没有驱动程序
【发布时间】:2016-02-25 08:26:27
【问题描述】:

我最近安装了 grails 3.1.x 并用 mysql 对其进行了测试。好的。 当我以类似方式移动到 MS express 2008 时,我发现:没有为 jdbc:sqlserver 找到合适的驱动程序。 我无法使用 maven 找到正确的 MS 依赖项,因此我从 Microsoft 服务器下载了基本的 jdbc4.jar,但 GRAILS 不知道我拥有它;所以

  • 我应该把它放在哪里手动安装?
  • GRAILS 2.x 上的一些人说 lib 文件夹,但我尝试过但没有成功。

感谢任何提示。

【问题讨论】:

    标签: sql-server grails gradle grails-3.0


    【解决方案1】:

    这是比 grails 更多的 gradle 问题。你必须告诉 gradle 这个驱动的位置。由于它不能从任何 maven repo 中提取,因此可以将其添加为本地文件依赖项。请参阅documentation。

    像这样添加到 build.gradle 中:

    dependencies {
      compile files('libs/jdbc4.jar')
      //... already added dependencies 
    }
    

    【讨论】:

      【解决方案2】:

      我明白了!可以通过 Maven 使用 jtds 驱动程序。就这么简单

      • 将runtime 'net.sourceforge.jtds:jtds:1.3.1' 放入build.gradle 文件中
      • 并在数据源中使用正确的语法,例如 driverClassName = "net.sourceforge.jtds.jdbc.Driver" dialect = "org.hibernate.dialect.SQLServerDialect" url = "jdbc:jtds:sqlserver://127.0.0.1:1433;databaseName=db_name" username = "sa" password = "my_password"

      我不确定方言是强制性的。当然,重要的是要正确管理 DB express 的配置,使其具有静态端口 1433,而不是默认的动态端口,以及具有密码身份验证的默认用户 SA。但经过许多天的研究,它确实有效!

      【讨论】:

      • 这对我不起作用,但将 jar 添加到 lib 文件夹并使用 @Piotr Chowaniec 回答确实有效。
      • 你的意思是在 build.gradle 中插入还不足以安装 jar?
      • 没错。将 runtime 'net.sourceforge.jtds:jtds:1.3.1' 放入 build.gradle 文件对我不起作用。我必须将 jar 放在项目中的文件夹中,我称之为 {project_directory}/libs;然后我将compile files('libs/jdbc4.jar') 添加到build.gradle 的dependencies 部分。
      猜你喜欢
      • 2021-08-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-14
      • 2011-01-01
      • 2020-06-25
      • 1970-01-01
      • 2012-09-18
      相关资源
      最近更新 更多