apply タスクを使用してプロジェクト内の Sass スクリプトを「コンパイル」する Ant タスクを作成しようとしましたが、「そのようなファイルまたはディレクトリはありません」というエラーが表示され続けました。ビルドパスのスペースが原因かもしれないと思ったので、プロジェクトを移動するというトラブルを経験しましたが、Ant がパスを返すときにファイルセットのルート ディレクトリを省略しているように見えることがわかりました。これは、ターゲットがどのように見えるかです:
<target name="sass-compile" depends="properties">
<apply executable="sass">
<srcfile />
<targetfile />
<fileset dir="${project.src.dir}" includes="**/*.scss" />
<globmapper from="*.scss" to="*.css" />
</apply>
</target>
トラブルシューティングを支援するために、実行可能ファイルを sass から echo に切り替えたところ、マッパーがこのようなパスを変換していることに気付きました...
/Users/me/Documents/Programming/workspace/Project/ src /java/com/proj/web/page/template/Template.scss
...これに...
/Users/me/Documents/Programming/workspace/Project/java/com/proj/web/page/template/Template.css
ターゲット ファイル パスに src ディレクトリがないことに注意してください。ここにバグがありますか、それとも何らかの形で予想されますか? ここで何が起こっているのか知りたいです。また、regexpmapper と、replacestring を使用した filtermapper を使用してみました。結果は同じです。
Mac で実行している Eclipse Helios にバンドルされている Ant 1.7.1 を実行しています。また、Mac と Linux の両方で Ant 1.8 を試しました。何も機能しません。誰にもアイデアはありますか?