【发布时间】:2015-01-05 03:19:06
【问题描述】:
我正在尝试在 BuildConfig 中包含一个自定义字段,其中包含使用此函数的构建日期:
def getDate() {
def date = new Date()
def formattedDate = date.format('yyyyMMddHHmmss')
return formattedDate
}
然后,我在 defaultConfig 中输入:
buildConfigField "String", "BUILD_NUMBER", getDate()
问题是,Gradle 生成的字段是:
public static final String BUILD_NUMBER = 20141108114911;
抛出“Integer too large”,但我不想要 Integer,我想要 String!
我尝试用String 明确替换def,尝试getDate().toString、getDate() as String 和"${getDate()}",但仍然没有引号包围我的字符串。我还尝试在日期中间放一个像“-”这样的字符,它仍然不会生成引号,使得:
public static final String BUILD_NUMBER = 20141108-114911;
显然没有任何意义......
我对此一无所知,对 Groovy 不够熟悉,因此不确定是否有另一种(有效的)方法来“强制”字符串。
【问题讨论】: