我有一个使用Gradle构建的Groovy应用程序。像往常一样,我在build.gradle
脚本中定义了应用程序版本号/字符串。在编译之前修改Gradle构建的Groovy源代码
现在我想在Groovy应用程序中使用该版本字符串作为硬编码的静态信息片段。例如,如在主应用程序类一个final static
构件:
class MyApp {
final static APP_VERSION = "0.1"
}
由于版本信息来自build.gradle
脚本,即Groovy类部件的上方需要由摇篮设置源都编译之前。换句话说:我需要一个Gradle任务,它允许我在Groovy源代码中设置变量的值,然后由Gradle构建它。我可以通过正则表达式搜索该值,并将其替换为Groovy源文件,但感觉有点笨拙。
任何“最佳实践”的想法如何实现?
该类是否包含除版本以外的任何内容?有没有理由你不能从属性文件中读取它? – 2014-10-27 01:24:14
@DylanBijnagte:我想对版本进行硬编码,但不在运行时从文件中读取。是的,该类包含此版本属性旁边的其他代码。 – Matthias 2014-10-27 10:09:52
如果文件很小,我会说它的模板,否则我认为你可能会卡在正则表达式的解决方案。 – 2014-10-27 11:44:58