我有一个 .properties 文件,位于我创建的名为 res
的源文件夹下(使用 Eclipse Mars 2)。我在那里还有另外两个文件夹,名为 messages
和 schemas
。
我需要帮助来提供文件路径,以便在将项目制作为 .war
文件后,它可以在本地和服务器(例如 JBoss)上运行。这是我的 .properties 文件:
# Credentials
user=flow
password=flow
# Path to schema for validation
schemaPath=schemas/Schema1.xsd
# Path to where you want to keep incoming and outgoing messages
messagePath=messages/
仅当我提供两个不同的 *Path
属性的完整路径(上面不是完整路径)时,上述属性文件才有效。但是,我不能这样做,因为它需要在应用程序服务器和不同的操作系统上工作。
在我的代码中,我将文件路径保存到字符串中,并使用这些字符串来指定写入或读取的位置。如何才能使其在使用 .war
文件部署到服务器后正常工作?
我正在 Eclipse Mars 2 中使用动态 Web 项目。
编辑:由于属性是用户可配置的,因此它们可能会提供完整路径。无论路径是如图所示的短路径还是完整路径,它都应该有效。
最佳答案
您必须确保 properties
文件是 classpath
的一部分,通常将其包含在 classes/
目录中。
在 Eclipse 中将带有 properties
文件的文件夹标记为源文件夹
。如果它位于包中,则在加载文件时在路径中使用该包名称。
例如,如果文件位于config/data.properties
中,则通过.getResource("config/data.properties");加载该文件
关于java - 如何调用 .properties 文件中列出的文件的文件路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37819833/