0.7.x默认情况下,所有新的SBT版本(位于之后)都会将下载的JARS放入主
.ivy2目录中的目录中。
如果您使用的是Linux,通常是
/home/<username>/.ivy2/cache。
如果您使用Windows,通常是
c:Users<username>.ivy2cache。
编辑:
这是我的一个项目的示例,其中定义了一个SBT任务,该任务将依赖项复制到目标文件夹中。您可以将此代码放入
project/Build.scala项目定义文件中。您的项目定义文件中应包含以下内容(有关更多信息,请访问www.scala-
sbt.org):
import sbt._import Keys._import Process._object MyProjectBuild extends Build {
下面的代码
deploy/libz通过定义一个
deploy捕获程序工件及其所有类路径依赖项的任务,将所有库复制到子目录中:
val deployKey = TaskKey[Unit]( "deploy", "Deploys the project in the `deploy` subdirectory.")val deployTask = deployKey <<= (artifactPath in (Compile, packageBin), dependencyClasspath in Compile) map { (artifact, classpath) => val deploydir = new File("deploy") val libzdir = new File("deploy%slib".format(File.separator)) // clean old subdirectory deploydir.delete() // create subdirectory structure deploydir.mkdir() libzdir.mkdir() // copy deps and artifacts val fullcp = classpath.map(_.data) :+ artifact def lastName(file: File) = if (file.isFile) file.getName else file.getParentFile.getParentFile.getParentFile.getName for (file <- fullcp) { println("Copying: " + file + "; lastName: " + lastName(file)) if (file.isFile) IO.copyFile(file, (libzdir / lastName(file)).asFile); else IO.copyDirectory(file, (libzdir / lastName(file))) }} dependsOn (packageBin in Compile)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)