簡體   English   中英

如何在Jruby上使用Scala列表?

[英]How can I use Scala list on Jruby?

我試圖在Jruby上使用Scala代碼。 這是我的scala代碼。

package test

object JRuby {

  def mystring: String = "This is String"

  def countChange(money: Int, coins: List[Int]): Int = {
    def count(m: Int, c: List[Int]): Int = {
      if (c.isEmpty) 0
      else if (m - c.head == 0) 1
      else if (m - c.head < 0) 0
      else countChange(m - c.head, c) + countChange(m, c.tail)
    }
    count(money, coins)
  }

}

這是我的紅寶石代碼。

require "java"
require "/usr/share/scala/lib/scala-library.jar"

puts Java::test.JRuby.mystring

當我嘗試使用“ jruby test.rb”運行我的ruby代碼時,它返回錯誤“未處理的Java異常:java.lang.NoClassDefFoundError:scala / collection / immutable / List”

它與classpath(jruby -J-cp /usr/share/scala/lib/scala-library.jar test.rb)一起使用時很好,但是我很好奇我是否可以在沒有classpath的情況下使用此代碼。

有什么辦法嗎?

我正在使用Scala 2.10.4,JRuby 9.1.2.0和openjdk 1.8.0_92的Fedora 23

-------解決---------與sbt的程序集插件正常工作

如果它不起作用,那很可能不會。 似乎Scala不喜歡放在JRuby的class-path上。

require .jar只附加到JRuby可見的CP

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM