NetBeans6.9でgroovyファイルが含まれているとテスト実行できない
NetBeans6.9にアップグレードしたのですが、以前まで問題なかったJavaプロジェクトのJUnitテストが実行できなくなりました。エラーメッセージは以下の通り。
nbproject/build-impl.xml:725:
Unknown attributes [apgeneratedsrcdir, processorpath]
ちなみにバグレポートは既に挙がっているようです。Bug185686 - Adding groovy class to Java Project - bad ant file build-impl.xml
Subversionで管理していたプロジェクトでしたので、nbprojectディレクトリ以下をrevertしてアップグレード前に戻してだましだまし使用してきましたが、今回新規プロジェクトを作成したので昔のバージョンに戻すという手段が取れず、根本的な解決を探りました。
nbproject/groovy-build.xmlの中にある-groovy-init-macrodef-javacターゲットの記述が、自動生成されるJava側のAntファイル(nbproject/build-impl.xml)に追従できていないのが問題のようです。
エラーメッセージにある2つのattributeの宣言(これはbuild-imple.xmlの中にもあります)
<attribute default="${javac.processorpath}" name="processorpath"/>
<attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
を、groovy-build.xml中の
<macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
の下あたりに挿入することで、エラーが出なくなりました。(注:この対策が本当に正しいのかどうかは、実のところ自信はありません)
[追記: 現在ではバグレポートに上記のことが書いてあります(どうも巡り巡ってこのエントリが英語文章化されたみたいなので、やっぱりこの回避策で良いのかは確信が持てませんが)。]
余談ですが、groovyで記述したテストケースをNetBeansで実行するには、Running Groovy tests in NetBeans 6.7.1というエントリが参考になります。
« nicoroid/lite ver.0.2.2 他Androidアプリとの連携強化 | トップページ | Grails1.3で標準出力が文字化けする原因について »
この記事へのコメントは終了しました。
トラックバック
この記事へのトラックバック一覧です: NetBeans6.9でgroovyファイルが含まれているとテスト実行できない:
» NetBeans7上でJDK7を用いてEclipseと結果が異なっていたコンパイラの挙動を確認する [雪羽の発火後忘失]
JDK7はこちらからダウンロードできる最新版(Build 141)を使用しました。なお、NetBeans7のリリースニュースで出ていた”JDK7デベロッパプレビュー版”というのはおそらくこちらのBuild 140ではないかと思いますので、若干バージョンが違います。 NetBeans実行に用いるJDKを変更するには、以前のエントリ NetBeansはどうやってjava.exeを探すのか: 雪羽の発火... [続きを読む]
« nicoroid/lite ver.0.2.2 他Androidアプリとの連携強化 | トップページ | Grails1.3で標準出力が文字化けする原因について »
コメント