Placeholders in properties file are not replaced i

2019-07-30 13:42发布

问题:

I have a filter.properties file that contains the following :

database.driver= mydatabase
database.url= myURL
database.user=usr
database.password=pwd
database.initialsize=3
database.maxactive=5

I also have this in my openejb.xml file in a Resource tag :

JdbcDriver ${database.driver}
JdbcUrl ${database.url}
UserName ${database.user}
Password ${database.password}

But when I do a tomee:run with maven I get a ton of errors of this type :

Unable to resolve class ${database.driver}

OR

Caused by: java.lang.ClassNotFoundException: ${database.driver}

I've tried to counter the problem by adding in my pom.xml :

<properties>
<myDatabase.driver>${database.driver}</myDatabase.driver>
</properties>

But it didn't work.

All suggestions are welcomed.

Best regards.

回答1:

https://maven.apache.org/plugins/maven-resources-plugin/examples/filter.html

Set

<filtering>true</filtering>

This assumes everything is a resource, file on the class path.

Alternatively create such a data source outside of the application in Tomcat.