gpt4 book ai didi

java - 如何使用Gradle添加 “jdbc”插件

转载 作者:行者123 更新时间:2023-12-03 03:29:44 25 4
gpt4 key购买 nike

我花了几个小时尝试实现
此sbt代码libraryDependencies += jdbc用于gradle。

我只想按here所述在我的应用程序中添加数据库访问权限。没有该插件,我看不到play.api.db.DB类,只有play.api.db.Database和play.api.db.DBApi。

有人可以帮我吗?

我正在使用Gradle 3.1,JDK1.8.0_05,Play!2.5.8,Scala2.11

这是合适的gradle代码:

configurations {
compile
}

dependencies {
compile group: 'com.typesafe.play', name: 'play-jdbc-api_2.11', version: '2.5.8'
compile group: 'com.typesafe.play', name: 'anorm_2.11', version: '2.5.8'
compile group: 'com.typesafe.play', name: 'play-iteratees_2.11', version: '2.5.8'
compile group: 'org.postgresql', name: 'postgresql', version: '9.3-1100-jdbc4'
}

*更新

我也尝试过使用 @Inject(db: Database)获取数据库访问权限,但仍然出现错误,如下面的屏幕截图所示:

enter image description here

因此,我输入了错误的代码:正确的代码- @Inject()(db: Database)

最佳答案

首先,您必须按照文档Adding dependencies中所述以正确的方式声明Play!依赖项。因此,您必须使用play而不是compile来实现编译时依赖性。

例如,对于Postgres DB,配置如下:

build.gradle

plugins {
id "play"
id "idea"
}

ext {
playVersion = '2.5.8'
scalaVersion = '2.11'
javaVersion = '1.8'
gradleVersion = '3.5'
}

model {
components {
play {
platform play: playVersion, scala: scalaVersion, java: javaVersion
injectedRoutesGenerator = true
}
}
}

dependencies {
play "com.typesafe.play:play-java_$scalaVersion:$playVersion"
play "com.typesafe.play:play-jdbc-api_$scalaVersion:$playVersion"
play "com.typesafe.play:play-java-jdbc_$scalaVersion:$playVersion"
play "org.postgresql:postgresql:42.1.1"

playRun "ch.qos.logback:logback-classic:1.2.3"
}

application.conf
# Database configuration
# ~~~~~
# You can declare as many datasources as you want.
# By convention, the default datasource is named `default`
db.default.driver=org.postgresql.Driver
db.default.url="jdbc:postgresql://server_host:5432/db_name"
db.default.user=user_name
db.default.password=user_password

附言
idea gradle插件是可选的。但是目前 play + gradle + idea集成不是很好。这就是为什么我不得不不时调用 gradlew cleanIdea idea命令,以便仅将依赖项和源包含在idea-project中的原因。

目前,我有以下版本:
  • IntelliJ IDEA 2017.1.4
  • Gradle 3.5
  • Play! 2.5.8

  • 我希望将来的集成会比今天更好。

    关于java - 如何使用Gradle添加 “jdbc”插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39938800/

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