Upload page content

You can upload content for the page named below. If you change the page name, you can also upload content for another page. If the page name is empty, we derive the page name from the file name.

File to load page content from
Page name
Comment

Locked History Actions

scala/Scaka_IDE_for_Eclipse

Scala IDE for Eclipse

参考

現状のトラブルとその解決策

現時点(2011/11)では、まだ不具合が多い。典型的な不具合とその解決策を探ってみる。

コンパイルエラーがあると実行できない

一箇所でもコンパイルエラーがあると、binディレクトリがクリアされてしまい、一つの.classファイルも生成されない。 このため一部のコードでも実行することは不可能。これはどうしようもないようだ。

JUnitテストが実行できない

JUnitによるユニットテストを素直に実行してくれないことがある。これに対する解決策は以下。

http://www.assembla.com/wiki/show/scala-ide/Using_Unit_Testing_Frameworks

上の一部訳:

  • プロジェクトのプロパティダイアログを表示する。
  • Java Build Path->Librariesタブでextenral class folder(外部クラスフォルダー)を追加する。つまりこれは、プロジェクトのbinフォルダ

  • Order and Export(順序とエクスポート)タブで、新しいクラスパス(binのこと)をトップにするか、あるいは少なくともソースフォルダの上に来るようにする。
  • もしJUnit4をビルドパスに加えていないのであれば、加える。

これでも実行できない場合がある。その場合は、Run ConfigurationのClassPathタブで、Scala LibraryがJRE System Libraryの上に来るように変更したらうまく行った(あくまで経験則)。

Consoleに表示される例外の中の行をクリックしても「Source not found」と言われてしまう

例えばコンソールに以下のように例外が表示された場合、二行目をクリックすればrelation.scalaの197が表示されるはずだが、 「Source not found云々」と言われてしまう。

Exception in thread "main" ru.circumflex.orm.ORMException: Failed to initialize city.
        at ru.circumflex.orm.Relation$class.liftedTree1$1(relation.scala:197)
        at ru.circumflex.orm.Relation$class.init(relation.scala:185)
        at circumflex_orm_only.City$.init(TestMain.scala:31)
        at ru.circumflex.orm.Relation$class.constraints(relation.scala:131)

おそらくこれ

つまり、ソースに記述されているパッケージがパッケージディレクトリ構造に一致していないとソースが探せない。 Scalaではソースファイルの存在するディレクトリとは無関係にpackageを決定できてしまうが、これはやらない方が良いようだ。