Eclipse クラスパス変数を使用して、クラスパス内のライブラリに添付されたソース JAR ファイルを解決したいと考えています。これは、Elcipse (Indigo) の現在の「.classpath」ファイルの内容です。
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry exported="true" kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry exported="true" kind="lib" path="lib/ApacheCommons/commons-logging.jar"/>
<classpathentry exported="true" kind="lib" path="lib/Spring-WS/spring-ws-1.5.8-all.jar"/>
<!-- [other entries] -->
<classpathentry kind="output" path="bin"/>
</classpath>
「spring-ws-1.5.8-all.jar」のソース JAR ファイルを追加すると、「.classpath」ファイルの内容は次のようになります。
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry exported="true" kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry exported="true" kind="lib" path="lib/ApacheCommons/commons-logging.jar"/>
<classpathentry exported="true" kind="lib" path="lib/Spring-WS/spring-ws-1.5.8-all.jar"
sourcepath="D:/dev/sources/spring-ws-1.5.8-sources.jar"/>
<!-- [other entries] -->
<classpathentry kind="output" path="bin"/>
</classpath>
ご覧のとおり、Eclipse は「sourcepath」属性を「classpathentry」要素に絶対パスで追加しました。
今私の考えは、絶対パスをクラスパス変数「SOURCE_PATH」に置き換えることです。これは「D:/dev/sources」に正しく設定されています。
(なぜこのセットアップを使用するのか、または変更する必要があると提案しないでください。これは古いプロジェクトであり、残念ながらビルド構造を変更することはできません/許可されていません)。
私は試した
sourcepath="SOURCE_PATH/spring-ws-1.5.8-sources.jar"
としても
sourcepath="${SOURCE_PATH}/spring-ws-1.5.8-sources.jar"
ただし、両方のバリアントは機能しません。
間違った構文を使用しているか、クラスパス変数の概念を理解していないようです。「sourcepath」属性にクラスパス変数を使用できないのでしょうか?
助けてくれてどうもありがとう!