Java 使用Sql Server 2005设置Play 2.0项目

Java 使用Sql Server 2005设置Play 2.0项目,java,sql,sql-server-2005,playframework,playframework-2.0,Java,Sql,Sql Server 2005,Playframework,Playframework 2.0,我之前将我的应用程序设置为使用MySQL db作为默认数据库,并且运行良好 现在我正试图让它与SQLServer2005一起工作。我尝试了这个和几个类似的变体: application.conf 但我得到了以下错误: Driver not found: [com.microsoft.jdbc.sqlserver.SQLServerDriver] ... caused by: java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserve

我之前将我的应用程序设置为使用MySQL db作为默认数据库,并且运行良好

现在我正试图让它与SQLServer2005一起工作。我尝试了这个和几个类似的变体:

application.conf 但我得到了以下错误:

Driver not found: [com.microsoft.jdbc.sqlserver.SQLServerDriver]
...
caused by: java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
乍一看,这似乎暗示构建路径中缺少jdbc驱动程序JAR。问题是,构建路径中没有缺少它。sqljdbc4.jar与其他所有内容都位于构建路径中

我错过什么了吗?我不知道该到哪里去。

在Play应用程序的根目录下创建一个lib文件夹,然后将sqljdbc4.jar文件放在这个lib文件夹下

sbt将在类路径中添加此文件夹和包含的jar,dist任务将在生成的zip上添加jar。

在Play app的根目录下创建一个lib文件夹,然后将sqljdbc4.jar文件放在此lib文件夹下


sbt将在类路径中添加此文件夹和包含的jar,dist任务将在生成的zip上添加jar。

事实上,错误似乎表明它没有正确加载jar。有两种可能的解决办法

您需要将其添加到build.scala文件中

val appDependencies = Seq(
    "sqljdbc4" % "com.microsoft.sqlserver" % "3.0"
)
也可以将其添加到根项目文件夹中的lib文件夹中


事实上,这个错误似乎表明它没有正确加载您的jar。有两种可能的解决办法

您需要将其添加到build.scala文件中

val appDependencies = Seq(
    "sqljdbc4" % "com.microsoft.sqlserver" % "3.0"
)
也可以将其添加到根项目文件夹中的lib文件夹中


JDBC驱动程序是动态加载的,而不是编译的,因此它位于构建路径中并不一定意味着它会随应用程序一起部署。运行应用程序时,您能验证它是否在类路径中吗?@JoachimIsaksson我该怎么做?我查看了java.class.path属性,但它只是在我的play Directory中返回一个JAR文件。请确保在动态加载而不是编译play cleanJDBC驱动程序后运行了play eclipsify命令,因此它位于构建路径中并不一定意味着它与应用程序一起部署。运行应用程序时,您能验证它是否在类路径中吗?@JoachimIsaksson我该怎么做?我查看了java.class.path属性,但它只是在我的play目录中返回一个JAR文件。请确保您在play Clean之后运行了命令play eclipsify。请打开您的JAR文件并检查它是否是有效的JAR。请打开您的JAR文件并检查它是否是有效的JAR。要添加ali的注释,它不起作用,因为微软不公开他们的jar。下载jar并手动添加。要添加阿里的评论,它不起作用,因为微软不公开他们的jar。下载jar并手动添加它。