• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

sbt/mill 命令行使用

武飞扬头像
马車
帮助1

对于有subproject 的scala工程

#build.sbt
lazy val core = (project in file("core"))    
lazy val sim = (project in file("sim"))    
lazy val lib = (project in file("lib"))  

目录层次如下

├── core
│   └── src
│       ├── main
│       └── test
├── lib
│   └── src
│       ├── main
│       └── test
└── sim
    └── src
        ├── main
        │   └── scala
        │       └── spinal
        │           └── sim
        │               └── Gen.scala
        └── test
            └── scala
                └── spinal
                    └── sim
                        └── Test.scala
学新通

sbt

单project运行某个Main函数

sbt "runMain core.Gen"

subproject的运行某个Main函数

sbt "sim/runMain spinal.sim.Gen"

subproject下test目录中的某个Main函数

sbt "sim/test:runMain  spinal.sim.Test "

运行某个subproject 下的某个test

sbt "sim/testOnly  spinal.sim.someTest"

运行某个subproject 下的的所有test

sbt "sim/testOnly "

运行所有test

sbt testOnly  

mill

subproject的运行某个Main函数

mill sim.runMain  svm.sim.generator

mill 添加本地jar

// copy foo.jar  to  foo/lib/
object foo extends SpinalModule {
  override def unmanagedClasspath = T {
    if (!os.exists(millSourcePath / "lib")) Agg()
    else Agg.from(os.list(millSourcePath / "lib").map(PathRef(_)))
  }
}

object mylib extends SpinalModule{
  override def moduleDeps = Seq(foo)
}

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgacgij
系列文章
更多 icon
同类精品
更多 icon
继续加载