WindowsのXAMPP環境でEthnaを使う際、Ethnaコマンドの設定でよく戸惑います。
プロジェクトの環境依存を減らすため、Ethna自体をプロジェクトのlibフォルダに入れるのが好きなのですが、そのような環境だと
- add-project で Could not open input file: ~\Ethna\bin\\bin\ethna_handle.php となどのエラー
- add-action で Fatal error: Could not redeclare class Ethna などのエラー
が出ることがあります。
私の使い方では、以下のような設定に落ち着きました。
共通の設定
phpにパスを通します。xampp/php のフォルダを環境変数のPATHで設定します。
ethna.bat があるフォルダにはパスを通さない方が良いです。
add-project をするとき
Ethnaをダウンロードして、workspaceに設置します。
workspace/Ethna/bin/ethna.bat を、workspaceにコピーします。
workspace/ethna.bat を開き、@PEAR-DIR@ を .\Ethna に一括置換します(2カ所)。
これで、コマンドプロンプトで、workspaceに入り、
C:\Users\baba\workspace > ethna add-project hoge
と実行できます。
add-action などをするとき
add-project 以外では、Ethnaのプロジェクトのディレクトリにいる必要があります。
hogeプロジェクトがある場合、workspace/hoge/lib フォルダに、Ethna(とSmarty)を設置しておきます。
workspace/hoge/lib/Ethna/bin/ethna.bat を、workspace/hoge にコピーします。
workspace/hoge/ethna.bat を開き、@PEAR-DIR@ を、 .\lib\Ethna に一括置換します(2カ所)。
これで、コマンドプロンプトでhogeディレクトリに入り、
C:\Users\baba\workspace\hoge > ethna add-action hoge_index
と実行できます。
以上で実行できますが、正直面倒なので、Eclipseプラグインを作ろうと思います。