2

の最後のステップとして、日食をリフレッシュしようとしていPowershell-scriptます。私は ".../My_Project" にいて、.xml ファイルは " .../My_Project/base/cmd" にあります。したがって、最後の行は

C:\app\eclipse_juno_SR2\eclipse -nosplash -application org.eclipse.ant.core.antRunner -f .\base\cmd\refresh.xml -consolelog

そして、私が使用するスクリプトは

<?xml version="1.0" encoding="UTF-8"?>
<project name="refresh_project" default="refresh" basedir="./../..">
<target name="refresh">
    <eclipse.refreshLocal resource="/My_Project" depth="infinite"/>
</target>
</project>

Eclipse内で使用している場合、ビルドは機能しますが、スクリプトを使用すると次のメッセージが表示されます:

org.eclipse.m2e.logback.configuration: The org.eclipse.m2e.logback.configuration
 bundle was activated before the state location was initialized.  Will retry aft
er the state location is initialized.
org.eclipse.m2e.logback.configuration: Logback config file: C:\Users\Dennis.Hert
el\workspace\.metadata\.plugins\org.eclipse.m2e.logback.configuration\logback.1.
3.0.20130129-0926.xml
org.eclipse.m2e.logback.configuration: Initializing logback
org.eclipse.m2e.logback.configuration: eclipse.consoleLog=true
Buildfile: .\base\cmd\refresh.xml

refresh:
[eclipse.refreshLocal] Warning: project /My_Project does not exist and cannot be
refreshed.
BUILD SUCCESSFUL

私は試した

  1. いくつかのプロジェクト
  2. eclipse.convertPath fileSystemPath="/My_Project"
  3. property="Test" fileSystemPath="/${workspace_loc}/My_Project"
  4. fileSystemPath="/${workspace_loc:My_Project}"
  5. fileSystemPath="/path/to/my/project/My_Project"
  6. 他の環境変数を使用${Test}してリソースとして使用する

ただし、変数 (ワークスペース) を展開しないか、パスが無効であるため (そうではない)、何も変更されないためにエラーがスローされます。

これがばかげた質問である場合はすみません。私は何時間も取り組んでいます。以前にantを使用したことがないので、思ったほど愚かではないことを願っています

4

1 に答える 1

0

私の推測では、ant スクリプトを実行している Eclipse インスタンスのワークスペースは、プロジェクトが配置されているワークスペースと同じではありません。これを回避するには、ant スクリプトの起動時に Eclipse ワークスペースの場所を指定してください。システム プロパティを使用してosgi.instance.area、スクリプトを開始するコマンドからワークスペースの場所を設定できます。

-Dosgi.instance.area=/path/to/my/workspace

コマンド ライン オプションの完全な説明を次に示します。

于 2013-04-24T21:46:52.477 に答える