gpt4 book ai didi

java - 为什么 sbt 不自动将库依赖项添加到类路径中?

转载 作者:行者123 更新时间:2023-12-01 17:54:50 26 4
gpt4 key购买 nike

为什么 sbt 不自动将libraryDependencies添加到类路径中?我正在尝试将 jdbc-sqlite 添加到我的项目中,但它找不到驱动程序。 lib 依赖项由 sbt 管理,因此它应该是类路径的一部分。但我想不是,那么我该如何添加呢?

定义对仅存在于我的盒子上的这些库的路径引用感觉是不好的做法。

name := "CacheWarmer"

version := "0.1"

scalaVersion := "2.12.3"

mainClass in Compile := Some("process.Daemon")

libraryDependencies ++= Seq(
"org.xerial" % "sqlite-jdbc" % "3.20.0" % "test"
)

package process

import java.sql.Connection
import java.sql.DriverManager
import java.sql.ResultSet
import java.sql.SQLException
import java.sql.Statement

代码

object Daemon {
def main(args: Array[String]): Unit = {
//Gets java.sql.SQLException: No suitable driver found for jdbc:sqlite::memory:
val connection:Connection = DriverManager.getConnection("jdbc:sqlite::memory:")
}
}

最佳答案

Maven 中心告诉您要在 SBT 中使用该依赖项,您应该使用:

libraryDependencies += "org.xerial"% "sqlite-jdbc"% "3.20.0" --> 请注意,没有双 %

%% 告诉 sbt 将当前的 scala 版本附加到工件名称中。假设您正在运行 scala 2.11:

libraryDependency += "org.some"%% "myscala"% "3.20.0"

脱毒后:

`libraryDependencies += "org.some" % "myscala_2.11" % "3.20.0"`

关于java - 为什么 sbt 不自动将库依赖项添加到类路径中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46006010/

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