我已经阅读了类似问题的主题,但还没有找到足够的答案。
我有以下问题: 我正在开发一个更大的Java程序,并希望创建一个类或方法,只是在程序启动时,测试res中的图像和txt文件是否存在。否则会有例外。
我的主要问题是我不知道如何一次管理所有这些多个文件。
也许有人可以提供帮助?
提前致谢!
答案 0 :(得分:0)
您似乎不是首先检查文件,而是检查类路径资源,即通过类Class#getResource
或Class#getResourceAsStream
等类加载器API加载的资源。当找不到资源而没有抛出任何异常时(这可能会被其他API稍后在程序中引发),两个API都会返回null
这样检查的代码就像这个函数一样简单
@Deprecated
private void isAppPackagedCorrectly(String res) {
if (getClass().getResource(res) == null) {
throw new RuntimeException("Missing resource " + res);
}
}
可以在循环中使用。在提供的代码片段中,我将API标记为已弃用,因为您可能不希望通过打包检查影响应用程序的启动。只需让您的构建过程正确一次,它就不会随机失败。
另外两个随机建议:
/
在构造绝对资源名称时具有特殊含义。 https://localhost/miApp/Rest/GetName。Preconditions.checkNotNull(getClass().getResource(res))