scala - 如何使用chisel模块作为包

标签 scala sbt chisel

对于 scala 人来说,这一定是一个显而易见的答案。但对于像我这样的新 scala 用户来说,情况并非如此;)

我有两个具有“标准”层次结构( spi2wbmdio )的 scala 模块(包),我想在第三个项目/模块中使用它们。

我的 spi2wb 模块的文件目录层次结构如下:

├── build.sbt
├── Makefile
├── README.md
└── src
    ├── main
    │   └── scala
    │       └── spi2wb.scala
    └── test
        └── scala
            └── test_spi2wb.scala

在 scala 源中我添加了包头:

  • 在 src/main/scala/spi2wb.scala
package spi2wb
  • 以及 src/main/scala/mdio.scala
package mdio

这两个项目都在我家用电脑的硬盘上。我想知道如何在我的第三个项目中以“import *”之类的方式使用这两个模块:

import mdio._
import spi2wb._

同样,这可能很简单,但我找不到简单的方法来做到这一点。

最佳答案

我找到了使用publishLocal的解决方案。

在每个模块的 build.sbt 中,我添加了版本和组织:

version := "1.0-rc2" 

organization := "org.armadeus"

然后对于每个子模块,我启动了publishLocal命令:

$ sbt publishLocal

在我的主“top”模块的 sbt 中,我添加了依赖项:

libraryDependencies ++= Seq("org.armadeus" %% "spi2wb" % "1.1")

libraryDependencies ++= Seq("org.armadeus" %% "mdio" % "1.0-rc2")

请注意,不要忘记将双 %% 符号作为第一个分隔符,以使其适用于您的 scala 版本。

我不知道这是否是最好的方法,但它确实有效。

关于scala - 如何使用chisel模块作为包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58198378/

相关文章:

scala - 如何处理ActiveLow复位/改变隐式时钟频率?

scala - Chisel 中的电源操作符

generics - Scala 的通用对象加载函数

scala - 我如何获得 Scala 中案例类的构造函数参数列表?

scala - 通过 libraryDependencies 和 sbt 插件添加依赖项有什么区别?

sbt - 如何在 “test”(集成测试)配置中使 “it”类可用?

chisel - 是否可以在 Chisel 中翻转模拟值?

scala - 在Scala中格式化二进制值

scala - 在 spark-streaming 上下文中将 RDD 写入 HDFS

apache-spark - 如何为Spark Streaming定义Kafka(数据源)依赖项?