如何将包导入 Scala REPL?

2023-12-05

如何将包导入 Scala 的 REPL 中? 我正在尝试导入这个名为 funsets 的包,它有一个名为“FunSets”的对象。 我尝试了几种变体import funsets._ and import funsets._;等等,但它仍然没有导入包中的函数和对象。


一种方法是编译“scala 类”并将其放入classpath.

例子,

1)假设你有课funsets.FunSets.scala

package funsets                                                                                        

object FunSets {                                                                                       

  def fun = "very fun"                                                                                 

}      

2)首先使用编译类scalac.(如果您使用sbt then sbt compile会将编译好的类放入target/ folder)

scalac FunSets.scala

你会看到funsets创建的文件夹/包,

$ ls -l
total 16
-rw-r--r--  1 updupd  NA\Domain Users   63 Dec 18 11:05 FunSets.scala
drwxr-xr-x  4 updupd  NA\Domain Users  136 Dec 18 11:06 funsets

3)然后启动REPLfunsets包在类路径中

$ scala -classpath .
Welcome to Scala 2.12.3 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_151).
Type in expressions for evaluation. Or try :help.

scala> import funsets._
import funsets._

注意:如果您使用sbt compile, put target/classes在类路径中。

访问 Funsets 单例,

scala> FunSets.fun
res0: String = very fun

另请阅读Scala REPL 无法导入包

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将包导入 Scala REPL? 的相关文章

随机推荐