我正在使用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"
)
Run Code Online (Sandbox Code Playgroud)
~/MyProject/project/Build.scala
如下
import sbt._
object MyProjectBuild extends Build {
lazy val MyProject = Project("MyProject", file("."))
}
Run Code Online (Sandbox Code Playgroud)
这似乎工作得很好.该项目确实编译并运行.项目名称设置正确(如果我不使用Build.scala,那么名称似乎看起来像"default - ????",尽管它在build.sbt中指定).
但问题是依赖似乎不起作用 - update
命令不下载任何东西.如何解决这个问题?在这种情况下,我是否需要指定依赖项Build.scala
而不是in build.sbt
?
Kip*_*ros 17
您是否有可能已经检索了项目依赖项,但没有意识到它,因为它们存储在常春藤缓存中?您可以使用该命令从SBT控制台查看托管类路径
show managed-classpath
Run Code Online (Sandbox Code Playgroud)
除非项目配置为执行此操作,否则最新版本的SBT不会将托管依赖项存储在项目目录中.如果需要,可以将以下内容添加到build.sbt
文件中:
retrieveManaged := true
Run Code Online (Sandbox Code Playgroud)
这将创建一个~/MyProject/lib_managed/
目录和内容.
归档时间: |
|
查看次数: |
2813 次 |
最近记录: |