Fight the Future

Java言語とJVM、そしてJavaエコシステム全般にまつわること

Scalaでアノテーションの属性を指定する

ScalaクラスにJavaアノテーションはそのまま使用できる。

  @Test
  def verifyAdd1() = {
  }

けど、属性をJavaのときと同じように書くとコンパイルエラーになる。

  @Test(expectedExceptions = Array(classOf[RuntimeException]))
  def exceptionTest() = {
  }

エラーメッセージを見たところ、@Test()だとコンストラクタと認識されるみたいだ。
ちょっと調べたら{}を使えばいいみたい。

  @Test{val expectedExceptions = Array(classOf[RuntimeException])}
  def exceptionTest() = {
  }

{}を使い、valで属性名を宣言する。