1

Eclipse でも使用している ant/ivy プロジェクトがあります。問題は、Eclipse で ivyde が ivysettings.xml の FileResolver について不平を言い、パスが絶対パスでなければならないと主張していることです。その理由は、環境変数の評価に失敗しているためだと思います。

以下は私の ivysettings.xml ファイルです。この絶対パスの要件により、ivyde は解析に失敗します。

<ivysettings>
  <properties environment="env"/>
  <properties file="./ivysettings.properties"/>
  <settings defaultResolver="chain"/>
  <resolvers>
    <filesystem name="local">
      <ivy pattern="${repository.dir}/[module]/ivy.xml" />
      <artifact pattern="${repository.dir}/[module]/[artifact].[ext]" />
    </filesystem>
    <chain name="chain">
       <resolver ref="local"/>
       <ibiblio name="maven2" m2compatible="true"/>
    </chain>
  </resolvers>
  <modules>
    <module organisation="org.example" resolver="local"/>
  </modules>
</ivysettings>

ivysettings.properties には以下が含まれます。

repository.dir=${env.githome}/metademo/ivy_build/repository

Ant はこれに満足していますが、ivyde は {$env.githome} を解決していないようです。さまざまな開発者環境の FileSystem リゾルバーのこの「絶対パス」要件を実行する方法が必要です...そのため、環境変数を使用してそれを参照します。ivyde にこれを認識させるにはどうすればよいですか?

4

1 に答える 1

1

Ant や Eclipse などの異なる環境で構成を機能させるには、外部変数から独立している必要があります。ivysettings.xml ファイルとプロパティ ファイルは、パスを解決するのに十分なはずです。

ここではenv.*、Ant を介してプロパティを設定しています。propertiesとそのenvironment属性を使用して、Ivy 自身に任せたほうがよいでしょう。

参照http://ant.apache.org/ivy/history/latest-milestone/settings/properties.html

于 2013-04-29T22:06:45.573 に答える