sbt相关内容

在与 2.9 交叉构建的项目中使用仅限 2.10 的 SBT 插件

假设我有一个针对 Scala 2.9.3 和 2.10.4 交叉构建的 SBT 0.13 项目.我只想为 2.10 构建使用 SBT 插件 (sbt-coveralls),因为该插件不适用于 2.9. 我知道我可以使用 CrossVersion 有条件地将插件设置添加到 2.10 构建中,但这无助于 addSbtPlugin 不可用的事实查找 2.9 版本等的任何内容. 我假设这是不可 ..
发布时间:2022-01-24 22:11:29 其他开发

为不同的 Scala 版本选择不同的源文件

您好,我想知道使用 SBT 是否可以针对使用某些类的不同源代码的不同 Scala 版本进行交叉编译.基本上保持兼容性,但也要利用新的语言功能.谢谢. 解决方案 您可以通过添加到 unmanagedSourceDirectories 设置. 类似这样的: 编译中的 unmanagedSourceDirectories ..
发布时间:2022-01-24 22:11:12 其他开发

使用 SBT,我如何指定一个替代项目根目录而不是当前目录来运行主类?

通常 SBT 在 ./build.sbt 和 ./project/Build.scala 中查找构建文件.是否可以指定备用项目根目录,以便我可以构建不在当前工作目录中的项目?我基本上在寻找与 mvn -f/path/to/pom.xml 等效的方法,但文档没有为我提供任何明显的答案. (我应该注意,我想在运行时而不是编译时执行此操作.本质上,我想使用 sbt run-main 从我的项目中运 ..
发布时间:2022-01-24 22:10:49 其他开发

如何在项目的 Scala 构建定义中定义包之后的目录结构?

sbt 项目中有两个完整的构建定义文件:Build.scala 和 Helpers.scala.它们位于 project 文件夹中. 我想把 Helpers 模块放到单独的子文件夹 project/utils 中.当我在 Build.scala 中执行 import utils.Helpers 时,它会说: 未找到:object utils 是否可以定义遵循 sbt 完整构建定义 ..
发布时间:2022-01-24 22:10:38 其他开发

何时使用“sbt assembly"?和 "sbt 编译 &&sbt 包"?

我想知道什么时候应该使用 sbt assembly 以及什么时候应该使用 sbt compile &&sbt 包? 我正在使用 Intellij IDEA 在我的本地计算机上编写一个程序,并且我正在使用 sbt compile && 编译它sbt 包,然后我将它上传到集群并使用spark-submit 运行它.这是最好的方法吗?什么时候应该使用 sbt 汇编? 解决方案 我想知道 ..
发布时间:2022-01-24 22:10:22 其他开发

使用 doc 任务生成 scaladoc 后如何运行 bash 脚本?

我有一个简短的 Bash 脚本,它对我的​​ Scaladoc 注释进行查找和替换,以便生成指向第三方库的外部文档的链接.我希望每次使用 doc 任务生成 Scaladocs 时都运行此脚本. 我怎样才能做到这一点? 解决方案 其实很简单.首先,我检查了 doc 看它是什么(inspect doc on the sbt prompt),注意到它是一个任务,然后继续在 build.sb ..
发布时间:2022-01-24 22:09:41 其他开发

带有 SBT 的条件 scalacOptions

我正在使用 SBT 为 Scala 2.8、2.9 和(希望)2.10 交叉构建的项目.我想在仅使用 2.10 编译时添加 -feature 选项. 也就是说,当我使用小于 2.10.0 的版本进行编译时,我想将编译器选项设置为: scalacOptions ++= Seq( "-deprecation", "-unchecked" ) 当使用大于或等于 2.10.0 的版本进行编译时: ..
发布时间:2022-01-24 22:08:55 其他开发

在 playframework 中重新加载自定义文件更改的应用程序

在 playframework 中有自动重新加载功能.这意味着在每个请求的开发模式下,play 检查文件的更改,并在必要时重新编译和重新加载项目.因此,例如,如果我 $ touch conf/routes,项目将在下一次请求时重新加载. 我想添加一些自定义文件以供关注. 我相信 watchSources 设置包含正在播放的文件列表.但这对我不起作用.考虑一下,我们想将 trigger ..
发布时间:2022-01-24 22:08:50 其他开发

cygwin/vista 中 sbt 的两个问题

我在 windows vista 上使用 cygwin 1.77.我在 shell 中遇到了 sbt 的输出问题.一些相关的环境变量: TERM=cygwinCYGWIN=服务器LANG=C.UTF-8 (1) 当我输入 sbt test 时,shell 包含很多不可打印的字符: 我该如何解决这个问题? 我的 sbt shell 脚本如下所示: dir=`目录名 $0`stty ..
发布时间:2022-01-24 22:08:33 其他开发

在没有互联网连接的计算机上使用 Scala

我是 Scala 的新手,如果问题非常明显,我很抱歉. 我的计算机上安装了 Eclipse Photon.想要编辑 Scala 代码并生成可运行的 jar.棘手的部分是我的计算机(Centos7)上没有互联网访问权限. 我牢记两个潜在的问题/问题: 手动下载插件:我知道,Eclipse 的 Scala IDE 插件可以运行 Scala 代码/生成 jar(如 https://me ..
发布时间:2022-01-24 22:07:46 Java开发

什么是 SBT 中的分类器

分类器一词是什么意思?它来自罐子吗?例如在 sbt-assembly 插件中: artifact in (Compile, assembly) ~= { art =>art.copy(`分类器` = Some("程序集"))} 解决方案 classifier被Maven定义为项目坐标的第五个元素,在groupId之后,artifactId、version 和 packaging. 更具 ..
发布时间:2022-01-24 22:06:57 其他开发

如何为 sbt 中的每个测试分叉 jvm

我正在处理一些(出于某种原因)只能在单个 VM 中使用一次的类.如果我在我的 sbt 设置中启用单独运行它们(fork := true),我的测试用例就可以工作. 如果我运行多个这些测试,它们会失败并出现异常,线程执行器拒绝任务(它很可能已关闭).找出导致问题的原因将非常耗时,即使我找到了问题,我也可能无法解决它(我无权访问源代码). 我目前正在使用 specs2 测试框架,但任何使用 ..
发布时间:2022-01-24 22:06:51 其他开发