【问题标题】:Add multiple classpath entries to scala REPL classpath将多个类路径条目添加到 scala REPL 类路径
【发布时间】:2014-06-16 23:02:00
【问题描述】:

:cp 似乎只接受一个条目

scala> :cp /usr/lib/hadoop/*:/usr/lib/hadoop/lib/*:/usr/lib/hbase/*:/usr/lib/hbase/lib/*:
/home/sboesch/spark-master/lib_managed/jars/*:/home/sboesch/spark-master/lib_managed/bundles/*:

The path '/usr/lib/hadoop/*:/usr/lib/hadoop/lib/*:/usr/lib/hbase/*:/usr/lib/hbase/lib/*:/home/sboesch/spark-master/lib_managed/jars/*:/home/sboesch/spark-master/lib_managed/bundles/*:' 
doesn't seem to exist.

关于如何做到这一点的任何想法已经在 REPL 中。是的,我知道如何在 REPL 之外进行设置

CLASSPATH=/usr/lib/hadoop/*:/usr/lib/hadoop/lib/*:/usr/lib/hbase/*:/usr/lib/hbase/lib/*
:/home/sboesch/spark-master/lib_managed/jars/*:
/home/sboesch/spark-master/lib_managed/bundles/*:  scala 

编辑似乎意图不明确。我正在研究 REPL 中的代码。然后有一个新的 sn-p 代码,它需要一些类路径条目。这是一次性的事情:所以我不想添加到 build.sbt 或 scala/lib 目录等。我没有收到任何真正满足这个用例的答案,但无论如何都给予了最大的努力。

【问题讨论】:

  • 我很确定 :cp 在最近的版本中被破坏并等待修复。供参考。但这是一个明显的用例。

标签: scala classpath read-eval-print-loop


【解决方案1】:

scala -cp "path1:path2" 现在似乎可以工作了。

scala -version 拾取_JAVA_OPTIONS: -Xms512m -Xmx4096m -XX:MaxPermSize=1024m -XX:ReservedCodeCacheSize=128m Java HotSpot(TM) 64 位服务器虚拟机警告:忽略选项 MaxPermSize=1024m;支持 在 8.0 Scala 代码运行器版本 2.11.8 中被删除 -- 版权所有 2002-2016,LAMP/EPFL

【讨论】:

    【解决方案2】:

    一种快速而肮脏的方法,将 $SCALA_HOME/lib/ 中的链接添加到包含其他 jar 文件的文件夹。然后从 REPL 你可以导入感兴趣的包。

    【讨论】:

      【解决方案3】:

      :cp 的帮助文本说:

      :cp <path>               add a jar or directory to the classpath
      

      所以我猜你没有确切的方法来获得它。我会用这个:

      :load <path>             interpret lines in a file
      

      我确认它适用于 REPL 命令以及 Scala 代码。

      附录:

      如果您使用 SBT,那么您的所有项目依赖项都位于由 SBT 的 console 任务启动的 REPL 的类路径中。

      【讨论】:

      • 不幸的是,我们在这里依赖外部文件。我将等待看看是否有其他解决方案。
      • 我不明白您所说的“外部文件”是什么意思,或者为什么它们会使:load 不合适。
      • 设置外部工件 - 包括文件 - 违背了答案的意图。但无论如何,我很感激你的意见,会给你一个赞成票。
      • 谢谢。但是每次将类路径键入或复制并粘贴到 REPL 中真的更容易吗?我添加了替代答案。
      • 我更新了 OP,因为它的意图似乎不够清楚。
      猜你喜欢
      • 2013-03-17
      • 2012-04-22
      • 1970-01-01
      • 2016-06-03
      • 1970-01-01
      • 2013-11-25
      • 1970-01-01
      • 2010-12-03
      • 1970-01-01
      相关资源
      最近更新 更多