SBT多项目建设与动态外部项目?

 吕贞吟明辉碧瑜 发布于 2023-02-13 07:35

假设我们有一个SBT项目bar依赖于某些工件foo:

val bar = Project('bar', file('.')).settings(    
  libraryDependencies += "com.foo" % "foo" % "1.0.0"
)

但是,在某些情况下,我想检查源代码foo并让SBT从我的文件系统而不是已发布的工件加载源代码; 这样,我可以对其进行局部更改foo并立即对其进行测试,bar而无需发布任何内容.

val foo = Project('foo', file('foo'))

val bar = Project('bar', file('.')).dependsOn(foo)

我们spec.json在根文件夹中有一个文件bar已经指定是foo应该从源使用还是作为工件使用.有没有办法设置我的构建来读取此文件并添加dependsOnlibraryDependencies基于值spec.json?"

这样做很容易libraryDependencies:

val bar = Project('bar', file('.')).settings(    
  libraryDependencies ++= 
    if (containsFoo(baseDirectory.value / "spec.json")) {
      Seq()
    } else {
      Seq("com.foo" % "foo" % "1.0.0")
    }
)

但是,我们找不到任何方法来设置做任何"动态" dependsOn,比如阅读baseDirectory SettingKey.

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有