sbt编译具有不同选项的任务

Giena

我有一个基本的sbt项目。我想用相同的源文件打包两个jar,但是用不同的选项进行编译。因此,一个项目,2个编译但具有不同的选项(scalacOptions)和2个jar作为输出。我不想两次执行sbt,更改选项。

有人有主意吗?

pfn

使用build.sbt中的类似内容,您可以运行sbt compile2:package并从compile config和compile2 config生成一个jar:

val Compile2 = config("compile2") extend Compile

inConfig(Compile2)(Defaults.compileSettings ++ Seq(
    // these options can be set as "in Compile2" outside of inConfig as well
    scalacOptions := SECOND-OPTIONS-LIST,
    // otherwise it will be "src/compile2", you want it to be "src/main"
    sourceDirectory <<= sourceDirectory in Compile,
    sbt.Keys.`package` <<= sbt.Keys.`package` dependsOn (sbt.Keys.`package` in Compile)
))

scalacOptions in Compile := BASIC-OPTIONS-LIST

我想这在代码行方面相对简单,但是如果不非常熟悉sbt的话,就不会那么简单了。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

用sbt交叉编译Scala时如何具有不同的源代码?(MurmurHash中的更改)

等待具有不同结果的多个任务

管理具有不同输出的任务

具有不同选项的 Rails Rounding 浮动

具有文件依赖项的SBT-web增量编译

对于向量不同元素具有不同任务的循环

Windows 8.1计划的任务具有PIN的“登录”选项

创新设置:具有不同选项的不同串行键?

Typescript编译器是否具有@inline函数选项?

具有不同conda环境的Python任务和DAG

Gulp任务具有不同的来源,具体取决于参数

具有不同标题长度的Bootstrap选项卡具有不同的高度

sbt编译失败,并带有错误的选项:'-Ywarn-macros:after'

使用grunt编译具有不同变量的LESS

具有不同编译器的相同STL文件

用于不同范围或任务的不同标尺选项?

FragmentPagerAdapter 中具有不同内容的选项卡

具有不同选项的数据表上的多个表

使用yargs / optimist的具有不同选项的多个命令

if(!isset($_GET['id']) 具有相同变量的不同选项

两个具有不同选项的jQuery UI datepicker

VueJs确保两个选择具有不同的选项

具有动态tabStyle的createBottomTabNavigator,用于不同的选项卡

在TabHost中创建具有不同内容的选项卡

来自不同表的具有相同选项ID的行的ORDER BY

具有类型和不同选项的通用实体的 Symfony 表单

猫鼬索引已经存在,具有不同的选项

PHP / HTML表格,具有不同的选项选择

无法从.bat文件启动具有不同选项的程序