JBoss7/WildFly webapp - 如何从 class 访问属性文件

JBoss7/WildFly webapp - how to access properties file from class

我尝试从自己的 config.properties 文件加载 webapp 项目的设置,但没有成功:找不到文件。我不能使用 ServletContext 方法,因为我已经从 普通 class.

访问文件
file = Config.class.getClassLoader().getResourceAsStream("/config.properties");

- returns 为空。

我已经尝试将文件放入 WEB-INFresources 文件夹,但仍然不起作用:(

有什么想法可以强制执行这项工作吗?

对于可以解决您的问题的配置文件,我的建议是将它们放在依赖于环境变量的文件夹中。

如果您的应用程序名为 MyApp,那么您可以强制用户将该文件放在指向环境变量 MY_APP 的文件夹中。实际上,您可以通过启动检查强制 运行 应用程序。

如果您希望您的应用程序在没有环境变量的情况下 运行,通常您应该为您的配置参数指定默认值。

要在 Java 中获取环境变量,您可以使用 System.getenv();

尝试将文件放入 WEB-INF/classes .

如果你将你的配置放在 src 中,编译后它将在 WEB-INF/classes.