2

requiredProperty我有一个使用包含数字的 Maven 架构类型,但速度变量是字符串。因此,在我的模板中,我无法测试此属性是否大于数字:

#if( $myVar gt 5 ) 

我已经测试了以下解决方案但没有成功。

我也试过这个:

#set( $intVar = Integer.parseInt($myVar) )

这在原型生成中也是失败的。

有什么建议吗?

4

2 回答 2

1

您无法从 Velociy 引用类,因此Integer.parseInt无法使用。但是,由于在 Java 中任何静态方法都可以作为实例方法调用,而 Velocity 只是 Java 的伪装,因此您可以调用parseInt任何整数。所以你可以试试这个技巧:

#if ($myVar.length().parseInt($myVar) gt 5)

你从你假设你拥有的一个变量开始获取一个整数,$myVar.

于 2013-01-01T19:50:25.580 回答
0

我已经基于原型描述符中提供的正则表达式实现了用户输入验证:

https://issues.apache.org/jira/browse/ARCHETYPE-487

希望它将为未来版本的 Maven 原型插件解决这个问题。

于 2015-09-04T12:26:01.027 回答