9

我想使用 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”元素中。

现在我的想法是用正确设置为“D:/dev/sources”的类路径变量“SOURCE_PATH”替换绝对路径。

(请不要问我们为什么要进行此设置或建议我们必须更改它;这是一个旧项目,很遗憾我们无法/不允许更改构建结构)。

我试过了

sourcepath="SOURCE_PATH/spring-ws-1.5.8-sources.jar"

sourcepath="${SOURCE_PATH}/spring-ws-1.5.8-sources.jar"

但两种变体都不起作用。

我似乎使用了错误的语法,或者我不理解类路径变量的概念。也许类路径变量不能用于“sourcepath”属性?

非常感谢你的帮助!

4

3 回答 3

5

我可能不完全理解您的问题,但听起来您添加了带有绝对路径的 jar 文件。而是使用类路径变量添加它。

使用项目属性,选择Java Build Path选项。然后单击Libraries选项卡。然后, Add Variable....如果您还没有创建您的 SOURCE_PATH 类路径变量,您可以通过单击Configure Variables...按钮从这里创建(只是正确工作区首选项设置的快捷方式)。配置完成后,您应该会在顶部的框中看到您的 SOURCE_PATH 类路径变量。您可以单击它扩展到Extend...它的子文件夹或 jar 文件。

于 2013-09-13T23:49:40.347 回答
1

使用上面 Tod 的答案,如果您在很多项目中有很多 jar,您可能会发现直接编辑 .classpath 文件更容易。在 .classpath 中使用 Java Build Path 变量会更改引用:

<classpathentry kind="lib" path="/full/pathTo/Jar.jar"/>

至:

<classpathentry kind="var" path="NEW_PATH_VARIABLE/Jar.jar"/>
于 2016-03-26T19:30:04.023 回答
0

您可以使用符号链接。Windows 还支持以 / 开头的路径。这取决于驱动器。尝试cd /在命令提示符下进行验证。

于 2013-04-28T22:08:55.673 回答