プロジェクトディレクトリの外からgrails warを呼び出す方法はありますか? 私のプロジェクト パスは「d:/deploy/project」です。プロジェクトディレクトリをコンパイラに渡す方法が必要です。このようなもの: grails d:/deploy/project war.
バッチ ファイルから呼び出される ant ant スクリプトを作成したので、バッチは d: で開始されます。そのため、ant タスクが実行されると
エラーが表示されます。それを行う方法はありますか?
プロジェクトディレクトリの外からgrails warを呼び出す方法はありますか? 私のプロジェクト パスは「d:/deploy/project」です。プロジェクトディレクトリをコンパイラに渡す方法が必要です。このようなもの: grails d:/deploy/project war.
バッチ ファイルから呼び出される ant ant スクリプトを作成したので、バッチは d: で開始されます。そのため、ant タスクが実行されると
エラーが表示されます。それを行う方法はありますか?
私の知る限り、いいえ。ドキュメントには、私が見つけた方法が示されておらず、「grails」コマンドからの出力は、grails.project を試して渡しても、「war」はプロジェクト外ではサポートされていないことを示しています。 class.dir
>grails dev war /tmp/foo.war -Dgrails.project.class.dir=/tmp/MyGrailsProject
Configuring classpath
Error /home/someuser does not appear to be part of a Grails application.
Error The following commands are supported outside of a project:
add-proxy
clear-proxy
create-app
create-plugin
help
list-plugins
package-plugin
plugin-info
remove-proxy
set-proxy
そのため、ビルド プロセスの一環として現在の作業ディレクトリを変更する方法が必要です。
私は回避策を取らなければなりませんでした。Ant スクリプトを変更しました。スクリプトが最初に行う必要があるのは、一時ディレクトリを作成し、必要なものすべてをそのフォルダーにコピーすることです。Grails プロジェクト、flex プロジェクト、および build.xml ant ファイル自体。この最初のプロセスの後、一時ディレクトリにある ant ファイルを呼び出します。必要なものはすべて同じフォルダー (ant スクリプトを含む) にあるため、grails の war コマンドを正常に呼び出すことができます。私はこのように働くことを嬉しくも誇りにも思っていませんが、それが唯一の方法のようです.