gpt4 book ai didi

java - 如何在 Eclipse 中指定测试类路径

转载 作者:搜寻专家 更新时间:2023-11-01 02:31:06 25 4
gpt4 key购买 nike

我有一个具有以下目录结构的 Eclipse 项目:

MyProj
>> src/main/java
>> src/main/config
>> src/test/java
>> src/test/config

内部src/test/config我有一个名为 app.properties 的属性文件充满了 src/main/java 中的两个类的属性和 src/test/java使用。

我用来查找属性文件的所有代码如下所示:

try {
Properties props = new Properties();

props.load(new FileInputStream("app.properties"));

someString = props.getProperty("app.title.color");
// etc.
} catch(Exception exc) {
// Handle exception...
}

但是,当我运行它时,出现以下错误(在上面的 catch 子句中处理):

java.io.FileNotFoundException: app.properties (The system cannot find the file specified)

但是当我移动 app.properties文件到我的项目根目录(与 src/main/java 处于同一级别)并重新运行代码,效果很好。

显然,这是一个类路径问题。如果我去 Build Path >> Configure Build Path >> Source我看到了 src/test/config实际上是构建路径 上的一个源文件夹。这可能并不意味着它也在类路径上!!!

如何配置 Eclipse 以查找 src/test/config在类路径上以便我可以将我的属性文件放在那里但在运行时仍然可用(当我运行单元测试时)?

提前致谢!

最佳答案

执行此操作的正确方法(这将确保您的代码在被放入 JAR 中时继续工作)是将 src/test/config 添加到项目的类路径中,并使用 ClassLoadergetResourceAsStream() 方法加载资源。例如

Thread.currentThread().getContextClassLoader().getResourceAsStream("app.properties")

关于java - 如何在 Eclipse 中指定测试类路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9088282/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com