2011-01-07 12 views
2

'val'という名前のJavaパッケージを作成してクラスを作成し、Scalaプログラムでインポートしようとします。 scalacは次のエラーメッセージで失敗します。Scalaソースで 'val'パッケージをインポートする

[scalac] /tmp/Hello.scala:6: error: identifier expected but 'val' found. 
[scalac] import net.slimweb.ann.val.NotEmpty 
[scalac]      ^
[scalac] one error found 

アイデアはありますか?予約名とシンボルを定義するためにそれらを使用したこと以外は

scala> val `val` = 1 
val: Int = 1 

scala> class `val` 
defined class val 

、またはメソッドとしてキーワードは、従来のJavaコード(例えば、とというメソッドを呼び出します。

答えて

14
import net.slimweb.ann.`val`.NotEmpty 

バッククォートはシンボルをエスケープするために使用することができます)、それらは空白を含むシンボルやそれ以外の奇妙な文字にも使用できます

+1

@prokoba - IttayDの答えは間違いなく機能しますが、可能ならばあなたのパッケージの名前を変更する方がはるかに良い選択です。他の提案された名前: 'import'、' def'、 'class'。 \ x6a \ x6b! – Malvolio

関連する問題