小编典典

如何在Google App Engine中加载属性文件?

java

因此,我正在尝试向项目添加一些功能,以允许在部署工件中使用用户定义的属性-一个简单的key:value
.properties文件。我将service.properties文件放在

war/WEB-INF/my-service.properties

在ServiceImpl.java构造函数中,我具有以下内容:

String propertiesFileName = "my-service.properties";

URL propertyURL = ClassLoader.getSystemResource(propertiesFileName);
URL propertyURL2 = this.getClass().getClassLoader().getResource(propertiesFileName);
URL propertyURL3 = this.getClass().getClassLoader().getResource( "WEB-INF/" + propertiesFileName);
URL propertyURL6 = this.getClass().getClassLoader().getResource(
       "E:/Projects/eclipse-workspace/projectName/war/WEB-INF/" + propertiesFileName);

属性URL的所有实例均为空。我知道我确实缺少某些明显的东西,但是我需要第二双眼睛。问候。

编辑:

嗯,似乎我很困惑,因为默认的GAE项目在/ war中创建了logging.properties文件。从Google App
Engine文档中:

_App Engine Java SDK在appengine-java-sdk / config / user
/目录中包含一个模板logging.properties文件。 要使用它,请将文件复制到WEB-INF /
classes目录(或WAR中的其他位置),然后将系统属性java.util.logging.config.file复制到“ WEB-INF /
classes / logging.properties”(或您选择的相对于应用程序根目录的路径)。您可以在appengine-
web.xml文件中设置系统属性,如下所示: _


阅读 223

收藏
2020-11-16

共1个答案

小编典典

尝试将service.properties放在WEB-INF / classes中。然后应该可以通过以下方式访问它:

this.getClass().getClassLoader().getResourceAsStream("/filename.properties");
2020-11-16