gpt4 book ai didi

scala - 如何在具有Build.scala的SBT 0.11项目中设置托管依赖项

转载 作者:行者123 更新时间:2023-12-04 05:25:53 25 4
gpt4 key购买 nike

我正在使用SBT 0.11构建一个简单的Scala项目。

所有代码文件都在~/MyProject/src/main/scala/
~/MyProject/build.sbt是以下


name := "MyProject"

version := "1.0"

scalaVersion := "2.9.1"

libraryDependencies ++= Seq(
"mysql" % "mysql-connector-java" % "5.1.+",
"c3p0" % "c3p0" % "0.9.1.2",
"org.apache.commons" % "commons-lang3" % "3.0.1",
"commons-lang" % "commons-lang" % "2.6",
"javassist" % "javassist" % "3.12.1.GA"
)
~/MyProject/project/Build.scala是以下

import sbt._

object MyProjectBuild extends Build {
lazy val MyProject = Project("MyProject", file("."))
}

这似乎几乎可以正常工作。该项目可以编译并运行。项目名称设置正确(如果我不使用Build.scala,则尽管在build.sbt中指定了名称,但该名称似乎仍显示为“default-????”之类的东西)。

但是问题在于依赖项似乎不起作用- update命令不下载任何内容。如何解决这个问题?在这种情况下,是否需要在 Build.scala中指定我的依赖关系,而不是在 build.sbt中指定我的依赖关系?

最佳答案

您是否可能已经检索了项目依赖项,但由于将它们存储在Ivy缓存中而没有意识到?您可以使用以下命令从SBT控制台查看托管的类路径:

show managed-classpath

SBT的最新版本不会将托管依赖项存储在项目目录中,除非已将项目配置为这样做。如果需要,可以将以下内容添加到 build.sbt文件中:
retrieveManaged := true

这将创建一个 ~/MyProject/lib_managed/目录和内容。

关于scala - 如何在具有Build.scala的SBT 0.11项目中设置托管依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7989420/

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