我正在开发一个简单的java应用程序,它需要再次对数据库进行一些操作。现在我有愚蠢的麻烦:
我在我的pom中定义了一些配置文件并启用了资源过滤:
.....
<profiles>
<profile>
<id>Development</id>
<properties>
<db.driverClass>MyDriver</db.driverClass>
<db.connectionURL>MyUrl</db.connectionURL>
<db.username>MyUsername</db.username>
<db.password>MyPassword</db.password>
</properties>
</profile>
<profiles>
.....
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
现在我还在src / main / resources中创建了一个myProp.properties,其中我定义了以下属性:
driverClassName = ${db.driverClass}
url = ${db.connectionURL}
username = ${db.username}
password = ${db.password}
如果我尝试运行 mvn install -P Development ,在生成的jar中maven变量被正确替换,但是如果我尝试使用Run-&gt; Java Application of eclipse执行程序以下代码片段
Properties props = new Properties();
props.load(getClass().getResourceAsStream("/myProp.properties"));
System.out.println(props.getProperty("driverClassName"))
我得到 $ {db.driverClass} 而不是MyDriver。 我在哪里做错了?
答案 0 :(得分:0)
您必须在eclipse构建配置中激活您的配置文件。 希望此页面有帮助:http://czetsuya-tech.blogspot.fr/2011/11/how-to-activate-maven-profile-inside.html#.VL0NPUeG9ps