将 data/strings 从 Maven 传递到 Java/JUnit 应用程序?

Passing data/strings from Maven to Java/JUnit app?

我有 Eclipse,还在 win7-64 机器上手动安装了 Maven。 我需要能够将数据传递给 Java 和 Java/JUnit 测试应用程序。 它在控制台中工作。 F.e。如果我这样做:

mvn -Dvar1=blah1 -Dvar2=blah2 test

我可以像这样读取 Java/Junit 代码中的数据:

String var1 = System.getPropertiy("var1")
String var2 = System.getPropertiy("var2")

但是如果我使用 Eclipse "internal" maven (m2e) "maven test" 并且当然在 运行 的 VM-properties 中指定“-Dvar1=blah1 -Dvar2=blah2” -作为框,当我尝试打印它们时,值为 "null"。

你能告诉我要寻找什么吗,这样我就可以解决这个问题。 (它必须在两种环境中工作)。

顺便说一句。在第一种情况下,我没有向 pom.xml 添加任何内容来使这项工作正常进行。 我这么说是因为我看到的 Q/A 与我的问题非常相似,似乎暗示我必须在 pom.xml!!

中添加一些内容

我更广泛的问题是通过此属性机制传递小的数据配置令牌是最佳实践,正确的方法来做到这一点。

我不确定,我正确理解了你的问题。我推测您在 eclipse 中为 'maven test' 传递参数时遇到了问题。

如果是这样,运行 作为 --> 运行 配置 --> 从左窗格 'Maven Build' 创建一个新的 maven 配置

在 'Main' 选项卡中,选择您的项目 --> 然后使用下面的 'Add' 按钮添加参数。然后您将能够在程序

中读取这些参数作为系统属性