为了代码样式的一致性,我想应用一组格式化规则并自动将操作保存到我的Eclipse项目中。
我已使用Eclipse中的File > Export > Preferences
将这些规则封装在EPF file中。
有没有办法使用Gradle将此EPF文件导入Eclipse以使规则生效?
Gradle的Eclipse Plugin具有linkedResource
属性,但我不确定这是否可行。
非常感谢任何提示。
答案 0 :(得分:5)
据我所知,没有功能可以在Gradle中自动导入这些设置。但是,我可以考虑通过提供defaultJdtPrefs.properties
文件来手动构建内容,该文件包含org.eclipse.jdt.core.prefs
的所有设置。要在执行org.eclipse.jdt.ui.prefs
时创建gradle eclipse
,您可以使用以下内容:
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())
}
}
使用此解决方案,您甚至可以使用上面提供的包含您的首选项的EPF文件来使用任何Groovy内置XML解析器创建org.eclipse.jdt.ui.prefs
文件; - )
我知道这不是最好的解决方案,因为你必须将这些东西添加到每个项目中(或通过自定义的Gradle插件),但这是我目前唯一能想到的解决方案。