使用Gradle将代码风格导入到Eclipse

12

为了保持代码风格的一致性,我想将一组格式规则和自动保存操作应用于我的Eclipse项目。

我已经使用Eclipse中的 File > Export > Preferences 将这些规则封装在一个EPF文件中。

是否有一种方式可以使用Gradle导入这个EPF文件到Eclipse并使这些规则生效? Gradle的Eclipse插件具有 linkedResource 属性,但我不确定这是否是正确的方法。

非常感谢任何提示。


我无法直接回答你有关使用gradle处理此问题的实际问题,但我可以建议你查看https://code.google.com/a/eclipselabs.org/p/workspacemechanic。我们已经使用它相当长的时间了,而且它运行流畅。希望能帮到你。 - roomsg
1个回答

5
据我所知,Gradle 没有自动导入这些设置的功能。但是,您可以手动构建一个包含所有 org.eclipse.jdt.core.prefs 设置的 defaultJdtPrefs.properties 文件。对于在执行 gradle eclipse 时创建 org.eclipse.jdt.ui.prefs,您可以使用以下方式:
tasks.cleanEclipse.doLast {
    delete("${project.projectDir}/.settings/org.eclipse.jdt.ui.prefs")
}

tasks.eclipse.doLast {
    File saveActionPrefs = file("${project.projectDir}/.settings/org.eclipse.jdt.ui.prefs")
    if (saveActionPrefs.exists()) {
        logger.warn("UI preferences already exist and will not be overridden. Use task 'cleanEclipse' first.")
    } else {
        saveActionPrefs.append('''
             eclipse.preferences.version=1
             <<HERE COMES YOUR CONTENT>>
             '''. stripIndent())
    }
}

通过这个解决方案,甚至可以使用Groovy内置的任何XML解析器来创建包含您的首选项的EPF文件中提供的org.eclipse.jdt.ui.prefs文件;-)
我知道这不是最好的解决方案,因为您必须将这些内容添加到每个项目中(或通过自定义Gradle插件),但这是我目前能想到的唯一解决方案。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接