如何配置Gradle google java格式插件以在构建步骤中运行goJF?

如何配置Gradle google java格式插件以在构建步骤中运行goJF?,gradle,intellij-idea,google-java-format,Gradle,Intellij Idea,Google Java Format,我们按照自述文件连接到我们的项目中 我们还连接了一个pre-commit钩子,在提交之前运行插件,这确保了在推送变更列表之前对其中的所有代码进行格式化,从而避免了在运行verGJF任务时在Jenkins中出现错误 但是,在运行/gradlew build之前,我们必须记住在本地运行goJF,否则构建会因格式错误而失败 我们通过为IntelliJ添加和插件,启用GoogleJava格式插件,并将SaveActions插件配置为在保存时格式化来解决这个问题 但这是开发人员必须记住的大量额外配置,而且

我们按照自述文件连接到我们的项目中

我们还连接了一个pre-commit钩子,在提交之前运行插件,这确保了在推送变更列表之前对其中的所有代码进行格式化,从而避免了在运行
verGJF
任务时在Jenkins中出现错误

但是,在运行
/gradlew build
之前,我们必须记住在本地运行
goJF
,否则构建会因格式错误而失败

我们通过为IntelliJ添加和插件,启用GoogleJava格式插件,并将SaveActions插件配置为在保存时格式化来解决这个问题

但这是开发人员必须记住的大量额外配置,而且这意味着他们在处理代码时不能按照自己想要的方式格式化代码,只能在构建或提交时重新格式化代码

我们更喜欢一个全梯度解决方案,这样
goJF
任务在
build
任务之前运行(并且在
verGJF
任务之前运行,该任务已经通过googlejava格式的梯度插件绑定到
build
任务)


我们不知道该怎么做。其他人知道吗?

听起来,在运行
verifyGoogleJavaFormat
任务之前(可能会抱怨),您需要始终确保代码的格式正确。在这种情况下,我只需将
googleJavaFormat
任务作为
verifyGoogleJavaFormat
任务的依赖项。在
build.gradle
文件中,应用google java格式插件后,只需添加以下内容:

verifyGoogleJavaFormat.dependsOn(tasks.googleJavaFormat)
或者,如果您确实只想在运行
build
任务时运行代码格式化程序(而不是只运行
verifyGoogleJavaFormat
任务时),则可以添加以下内容:

build.dependsOn(tasks.googleJavaFormat)
verifyGoogleJavaFormat.mustRunAfter(tasks.googleJavaFormat)

我曾试过mustRunAfter,但没能让它工作。我将尝试您的第一个建议。尝试您的第一个建议,失败的方式与mustRunAfter相同:*出现了什么问题:无法确定任务的依赖关系:verifyGoogleJavaFormat'>无法转换com.github.sherter.googlejavaformatgradleplugin.GoogleJavaFormatExtension_Decorated@4600b9a9完成一项任务。支持以下类型/格式:-字符串或字符序列任务名称或路径-TaskReference实例-任务实例…-包含任何这些类型的Iterable、Collection、Map或array实例对不起,我应该先尝试我的解决方案。我没有意识到有一个扩展名与
googleJavaFormat
任务同名。我已经更新了我的答案,并成功地用Gradle 6.3)对其进行了测试。啊!成功了。我以前从未见过具有相同名称的任务和扩展。将把它添加到下次检查的事项列表中。非常感谢。我以为我做了那件事,但只是投了更高的票。现在接受了。再次感谢——我现在在Gradle文件中有这个配置!另一种在Buff.Geordle中添加任务依赖项的替代方法是,在IDE构建之前或之后配置GADLE任务,请参阅。我使用ChRIKI的答案来结束,但是能够将梯级任务编入ItLILJ在其他情况下是有用的-谢谢!