我已阅读有关此主题的所有相关条目,但没有任何效果。
我已将数据库属性文件放在resources / property / db.properties下,将以下内容添加到Maven:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<version>1.0.0</version>
<executions>
<execution>
<phase>generate-resources</phase>
<goals>
<goal>write-project-properties</goal>
</goals>
<configuration>
<outputFile>${project.build.outputDirectory}/property/db.properties</outputFile>
</configuration>
</execution>
</executions>
</plugin>
并使用以下代码获取流:
this.getClass().getClassLoader().getResourceAsStream("db.properties");
但是当Properties对象加载它时,奇怪的是它只包含pom.xml中定义的一个属性(这是一个编码属性)!
我也尝试了以下内容但无济于事:
this.getClass().getClassLoader().getResourceAsStream("property/db.properties");
当项目构建和部署(Tomcat)时,我可以看到该文件位于目标的class / property / db.properties(或后者,在class / db.properties中)。我在这里缺少什么吗?
更新
正如下面的评论中所建议的,使用&#34; /&#34;将路径作为前缀添加到属性文件中。
如果要使用properties-maven-plugin进行此操作,请确保在POM.xml的Properties
部分中指明属性值。然后,此插件会抓取这些值,并将它们放在outputFile
标记所指示的属性文件中。