2

免责声明:我是 scala 初学者。所有默认设置对我来说都很好,但是每当我想要自定义布局/构建时,我都会遇到问题。

因此,作为我构建的一部分,我需要将项目 A 中的 .war(web 应用程序)和项目 B 中的 .jar(jetty 启动器)拉到项目 C(tanuki 服务包装器)的某个目录中。

任何人都可以提供一个示例如何以最有效的方式做到这一点。

4

1 回答 1

1

不确定它是否适用于战争文件,但为了使 jar 在本地可用,您可以使用 sbt 的publish-local命令。假设你有一个 sbt 项目“mylibrary”和另一个 sbt 项目“mymain”。如果您在本地发布“mylibrary.jar”,您可以将其作为依赖项添加到“mymain”,就像添加任何其他 sbt 管理的依赖项一样,即通过添加如下行

libraryDependencies += "foo.bar.com" %% "mylibrary" %  "0.1-SNAPSHOT"

build.sbt“mymain”。

如果这不可能,您可能需要编写一个 sbt 插件/命令,将文件复制到给定目录中。我没有扩展 sbt 的经验,所以我对此无能为力,但其他 stackoverflowers 肯定可以:-)



编辑:(解决OP的评论)

不,我没有特定的 Sbt 教程。如果我需要帮助,我会求助于通常的嫌疑人,wiki邮件列表StackoverflowSbt 的源代码。Sbt 有一个IO 包,它提供了一个 copyFile 方法,根据这个线程,它派上用场了。在邮件列表中搜索“复制文件”也会产生其他可能对您有所帮助的结果。

于 2012-07-02T07:49:12.717 回答