トップ

GantやAntBuilderで,ハイフン付きのタスクを実行するには注意が必要という話。ふむふむ,なるへそ。


似たような理由で,Groovyスクリプトのファイル名はクラス定義がなくても,ハイフン付きにはできないですね*1。たとえば,こんなスクリプトだとしても

#!/usr/bin/env groovy
println "Hello World"

こんなファイル名はダメ(ClassFormatErrorになる)。

  • hello-world.groovy
  • 123hello.groovy

こんな名前じゃないと動いてくんない。

  • hello_world.groovy
  • HelloWorld.groovy
  • Hello123.groovy

要するにJavaのクラス名の命名規約に縛られるワケですね。


元がJavaだと思えば分からんでも無いが,スクリプト言語だと考えると意外に(ファイル名の)自由度が無いよなー。:-(
当然,Gantのビルドスクリプトのファイル名も同じルールが適用される(一瞬ハマりました)。

*1:数字始まりもダメ