0

私のプロパティgwt.sdkは、他の場所では問題なく展開されますが、パス/パス要素内では展開されません:

<target name="setup.gwtenv">
  <property environment="env"/>
  <condition property="gwt.sdk" value="${env.GWT_SDK}"> 
    <isset property="env.GWT_SDK" />
  </condition>
  <property name="gwt.sdk" value="/usr/local/gwt" /> <!-- Default value. -->
</target>

<path id="project.class.path">
  <pathelement location="${gwt.sdk}/gwt-user.jar"/>
</path>

<target name="libs" depends="setup.gwtenv" description="Copy libs to WEB-INF/lib">
</target>

<target name="javac" depends="libs" description="Compile java source">
  <javac srcdir="src" includes="**" encoding="utf-8"
      destdir="war/WEB-INF/classes"
      source="1.5" target="1.5" nowarn="true"
      debug="true" debuglevel="lines,vars,source">
    <classpath refid="project.class.path"/>
  </javac>
</target>

たとえば、${gwt.sdk} のエコーをすぐ上に配置すると機能しますが、「project.class.path」内には機能しません。それはバグですか、それとも私がしていないことをしなければなりませんか?

編集:プロパティをターゲットsetup.gwtenvから「グローバルスペース」に移動してみました。これにより、問題を回避できました。

4

2 に答える 2

0

誰も答えなかったので、解決策は「グローバルスペース」${gwt.sdk}から出入りすることだと思います。setup.gwtenv

于 2010-05-21T07:47:03.240 に答える
0

拡張が機能しないか、エコーだけですか? エコー タスクをターゲットの外に配置できないため、これは異なります。<echo message="${gwt.sdk}"/>最初のタスクとして javac ターゲット内で試してください。

グローバルは以前にターゲットを<path>実行していません。setup.gwtenvたぶんあなたは<path>中を動かすことができsetup.gwtenvますか?

最後に: パスの作成時にその場所は存在しますか? それ以外の場合、パス要素は無視されます。

于 2010-04-26T12:03:38.373 に答える