如何将目录添加到Eclipse的类路径中?

18

我正在尝试运行另一个人创建的现有Eclipse项目。
将其导入Eclipse后,尝试以运行为->Java应用程序的方式运行,但由于在bin / resources中找不到.properties文件,因此失败了。

我打印出了Eclipse正在使用的类路径。

logger.info(System.getProperty("java.class.path"));

果然,它包括bin和所有的lib/*.jars,但不包括bin/resources。将.properties文件复制到bin中可以使程序工作,但我想知道如何将目录添加到Eclipse类路径中。

我尝试了几种方法,但都没有成功。

export CLASSPATH=$CLASSPATH:/home/me/programdir/bin/resources

这行不通。我知道这不是一个理想的解决问题的方法,但我本以为它会解决问题。(我更多地了解Windows而不是Linux系统变量的细微差别)

接下来,我尝试修改Eclipse中运行->配置对话框中的VM参数。

-classpath "/home/me/programdir/bin/resources"

这里也没有运气,这让我感到困惑,因为我确信它会起作用,并且似乎是一个合理的解决方案,需要将一个额外的文件夹添加到类路径中。

接下来,我尝试直接修改build.xml文件。我找到了定义类路径的部分,并添加了我的自定义行bin/resources,如下所示:

<path id="classpath">
    <fileset dir="./bin/resources" includes="**/*.properties"/>
    <fileset dir="./lib" includes="**/*.jar" /> 
</path>

这也没有成功。这让我更加困惑,所以我把整个路径元素都注释掉了,记录器打印出的类路径并没有改变,因此可以看出Eclipse使用的不是这个类路径。这对我来说似乎是最好的解决方案,如果它起作用的话:build.xml文件可以检查正确的附加内容,以防止未来用户遇到问题。

接下来,我尝试了IDE方法。运行->配置->类路径->用户条目->高级,然后只需添加bin/resources文件夹即可。那就完美了,程序找到属性文件,一切正常。但是,我不满意我的之前的努力失败了,而我又不太理解为什么失败了。看来每个方法都应该奏效。

此外,我希望以这样的方式修复此问题,以便代码能够捕获它,从而使后续用户无需重复上述步骤。因此,我的解决方案并不是很令人满意,因为我不确定哪个实际的代码部分发生了改变,因此无法验证“修复”是否已经被检入。

如何找到Eclipse正在使用的实际定义其类路径的方式?我曾认为这将是build.xml类路径定义,但事实并非如此。

5个回答

27
在Eclipse中,有一个构建classpath和运行时classpath。还有默认为bin的构建输出位置。您不想直接将资源添加到bin中,因为当进行干净构建时,Eclipse可能会删除其内容。您需要做的是在项目中添加一个resources文件夹,以包含您要包含在构建输出中的任何非Java文件。
要将此resources文件夹的内容包含在构建输出(bin)中,请右键单击项目,然后选择"属性"。在项目属性中,选择Java Build Path部分,然后选择Source选项卡。
使用添加文件夹...按钮来选择项目中的resources文件夹,然后点击确定保存更改。此时,Eclipse将在构建时自动将所有内容从resources复制到bin中。

7

这是针对一个Maven项目的:

  1. 右键点击项目
  2. 点击运行配置
  3. 点击类路径选项卡(Oxygen Eclipse)
  4. 点击用户条目
  5. 点击高级选项
  6. 第一个单选按钮应该默认为“添加文件夹”
  7. 点击确定

2

按照以下步骤解决此问题:

  1. 右键单击项目
  2. 点击“运行为”并选择“运行配置”
  3. 点击类路径选项卡(Oxygen Eclipse)
  4. 点击用户项
  5. 点击“添加外部JAR文件”,并选择已下载的JAR文件
  6. 点击应用并运行您的项目...

1

包资源管理器中右键单击项目名称,选择属性,左侧选择Java构建路径,右侧选择选项卡,在添加文件夹中浏览项目目录以选择资源文件夹或其他需要添加到Eclipse类路径的内容,点击确定,再次点击确定。完成。


0

如果您不想将属性文件复制到 bin 文件夹中,可以尝试以下方法:

  1. 右键单击您的项目,选择构建路径,选择配置构建路径..

  2. 选择选项卡

  3. 选择添加类文件夹..

  4. 添加您的资源文件夹。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接