使JVM scala库在Scala.js中可用

时间:2018-10-20 14:14:54

标签: scala sbt scala.js

使普通scala库(sbt)可用于scala.js(也包括sbt)的标准/最简单方法是什么?我是否只是将源文件复制/分叉到scala.js项目中并进行构建,或者是否有任何聪明的方法来“包装” JVM Scala库并使它在scala.js应用程序中可用?

我之所以问是因为有一个我想在scala.js应用程序中使用的JVM scala开源库。我已经复制了.scala文件并对其进行了一些修改,现在一切正常,但是这种方法似乎有点“直截了当” /笨拙。

1 个答案:

答案 0 :(得分:4)

您想将其变成一个 cross-building 库。有关详细信息,请参见this page,但摘要是,您通常为双方都相同的代码创建一个“共享”代码目录,而JVM和JS目录则为特定于一个平台或另一平台的位创建目录。或者,您可以创建一个“纯”交叉项目,该交叉项目只需两种方式即可编译。

但是请注意,这假定您已控制了库。我不知道在没有他们帮助的情况下“包装”其他人的图书馆的任何方法-在这种情况下,我可能会分叉该图书馆并将其变成交叉构建的图书馆。