0

何が起こっているのか、それを理解する方法すらわかりませんが、このようなScalaHelloWorldオブジェクトがあります。

object TestFoo {
  def main(args: Array[String]): Unit = {
    println("Hello World")
  }
}

Scala IDE for Eclipse(Scala 2.9の場合、Eclipse Indigoを実行)はエラーを表示せず、コンパイルされたクラスを作成しました。「実行」>「実行」>「Scalaアプリケーション」に移動すると、ターミナルコンソールに出力が表示されません。ただし、コマンドラインに移動してscalaを直接実行すると(Eclipseでコンパイルされたクラスファイルを使用して)、正しい出力が得られます。

% scala -cp bin/classes TestFoo
Hello World

出力がEclipseに表示されるように、私が間違ったことをしたか、問題を修正するために何ができるかについてのアイデアはありますか?

更新: Eclipseからのコンソール出力をチェックして、コメント投稿者の1人がエラーログのチェックを提案した後、そこに通常の何かがあるかどうかを確認しました。例外として、Javaのクラッシュレポートが表示されます。

Java information:
 Exception type: Internal Error (/SourceCache/JavaJDK16/JavaJDK16-424/hotspot/src/share/vm/runtime/fieldDescriptor.cpp, line 85)

#  guarantee(_name_index != 0 && _signature_index != 0) failed: bad constant pool index for fieldDescriptor
4

1 に答える 1

1

さて、さらに調査したところ、Scala プロジェクトを使用して作業を行っている限り、すべてが正しく機能していたようです。また、Scala と Java を組み合わせて実行する典型的な Java プロジェクトでも機能する場合があります。

この場合、Android プロジェクトでテスト スクリプトを実行しようとしましたが、ターミナルがまったく見つからず、例外が報告されました。それが私が間違っていたことです。

Android プロジェクトまたはその他の非 Scala プロジェクト内からコンソール アプリを実行できない場合は、おそらくそれが問題です。そのようなことには Scala プロジェクトを使用します。

于 2012-06-24T02:16:02.753 に答える