我正在尝试定义maven属性:
<properties>
<property>$${property}</property>
</property>
Maven尝试扩展$ {property},我收到以下错误:
[ERROR] Resolving expression: '${property}': Detected the
following recursive expression cycle in 'property': [property] -> [Help 2]
我尝试了各种各样的组合试图逃避它,但没有成功:
$$
\$
\$$
等等
注意:当属性值与名称不同时,插值将被转义。
这可能吗?
答案 0 :(得分:1)
由于您似乎无法构建maven属性(即使使用中间属性),也许您可以保留2个单独的属性并将它们连接到您需要的位置。假设你想在文件中填充一些属性。
在POM中定义2个变量:
<properties>
<property>{property}</property>
<dollar>$</dollar>
</properties>
在文件中定义属性时使用两者:
# variable from file which is to be filtered
whatever=${dollar}${property}
过滤后你最终会得到:
# variable from file which is to be filtered
whatever=${property}
<小时/> <击> 使用
&
怎么样?配置如:
<properties>
<property>&{property}</property>
</properties>
...
<plugins>
<plugin>
<groupId>com.soebes.maven.plugins</groupId>
<artifactId>echo-maven-plugin</artifactId>
<version>0.2</version>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>echo</goal>
</goals>
</execution>
</executions>
<configuration>
<echos>
<echo>property=[${property}]</echo>
</echos>
</configuration>
</plugin>
</plugins>
将输出:
[INFO] --- echo-maven-plugin:0.2:echo (default) @ XXXX ---
[INFO] property=[&{property}]
击> <击> 撞击>
答案 1 :(得分:-1)
${property}
应该可以正常使用。