我有一个python脚本,可以根据另一个文件修改java类的一部分(添加静态字段)。
在Gradle构建过程中添加它的最佳方法是什么(我的脚本需要pyton3(因此最好告诉用户他是否没有它)并且需要在java编译之前执行)?
答案 0 :(得分:1)
我不确定从gradle运行python的最佳方式是什么,但是一个候选者是使用exec任务:
task runPython(type:Exec) {
workingDir 'path_to_script'
commandLine /*'cmd', '/c'*/ 'python', 'my_script.py'
}
您可能需要在Windows上添加cmd
和/c
。您还可以在stdout上解析/断言成功条件。请参阅此处more about Exec。
至于确保此任务始终在compileJava之前运行,您必须将此任务添加为compileJava任务的dependsOn
:
compileJava.dependsOn runPython
替代语法:
compileJava{
dependsOn runPython
}
当compileJava依赖于runPython时,每次调用compileJava时都会先执行runPython。