我正在使用 maven 作为我的构建工具。下面是我的 POM 中的一个片段。
<properties>
<geb.version>2.2</geb.version>
<selenium.version>3.14.0</selenium.version>
<groovy.version>2.4.14</groovy.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<spock.version>1.1-groovy-2.4</spock.version>
<surefire.plugin.version>2.20</surefire.plugin.version>
<surefire.plugin.parallel>methods</surefire.plugin.parallel>
<selenium.host>XXXXX</selenium.host>
</properties>
我正在编写一个 linux 可执行文件,我想访问 <selenium.host>
我的 bash 脚本中的属性。我该怎么做?
DEFAULT_ADDRESS=$(get address from POM here)
请注意,我的脚本和 POM 文件在同一个目录中。
干杯!
最佳答案
最好和可靠的解决方案是使用 maven-help-plugin像这样:
ADDRESS=$(mvn help:evaluate -Dexpression=selenium.host -q -DforceStdout)
如果您没有在 pom 文件中指定 maven-help-plugin 的版本,您应该使用以下内容:
ADDRESS=$(mvn org.apache.maven.plugins:maven-help-plugin:3.2.0:evaluate -Dexpression=selenium.host -q -DforceStdout)
结果是从 pom 文件中读取给定的属性,然后将值分配给 ADDRESS
关于linux - 在 bash 脚本 (Linux) 中从 maven POM 读取属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53868336/