针对班级成员的Scala-ARM?

时间:2014-07-31 12:56:34

标签: scala scala-arm

我对Scala很新,所以请原谅我的基本问题。

我试图让Scala-Arm管理类成员的发布,但是在确定范围方面存在问题。

虽然以下代码编译,但它失败并带有

java.lang.NoSuchMethodError: resource.ManagedResource.reflect()Ljava/lang/Object; 

关于反映电话。所以似乎managed_file正在被立即释放。

对于局部变量,我使用了for (managed_file <- managed(...))语法,但我不知道该怎么做。

建议任何人?

class Writer(outputPath: String){

  val managed_file = managed(new FileOutputStream(new File(outputPath)))

  def write(something : SomeClass) {
    var bos = new ByteArrayOutputStream
    var dos = new DataOutputStream(bos)

    try {
      dos.write(Marshal.dump(something))
      bos.writeTo(managed_file.reflect)
    } 
    finally {
      dos.close
      bos.close
    }
  }
}

1 个答案:

答案 0 :(得分:0)

NoSuchMethodError是编译/运行时差异错误。您可以成功编译Scal ARM,但在运行期间找不到(或者至少在同一版本中找不到)。