gpt4 book ai didi

xml - 将自定义代码样式 xml 传递给 gradle idea 插件

转载 作者:数据小太阳 更新时间:2023-10-29 02:06:19 26 4
gpt4 key购买 nike

有没有办法让gradle idea插件在生成项目文件时使用自定义代码风格的xml?

我总是可以将 xml 复制到“~/Library/Preferences/IntelliJIdea13/codestyles”,然后在导入项目后更改代码样式,但我希望 gradle 插件在生成过程中自动为我执行此操作.

谢谢!

最佳答案

以防万一有人试图这样做,我设法使用插件 Hook 解决了这个问题,在项目的 ipr 文件写入磁盘之前对其进行了修改。基本上,将以下内容添加到您的 build.gradle 中:

idea {
project {
ipr {
withXml { provider -> addCodeStyle(provider) }
}
}
}

def addCodeStyle(provider) {
def project = provider.asNode()
project.appendNode('component', [name: 'ProjectCodeStyleSettingsManager'])

def codeStyleNode = findComponent(project, 'ProjectCodeStyleSettingsManager')
codeStyleNode.appendNode('option', [name: 'USE_PER_PROJECT_SETTINGS', value: 'true'])
def projectSettingsNode = codeStyleNode.appendNode('option', [name: 'PER_PROJECT_SETTINGS']).appendNode('value')

def codeStyleUrl = "fileUrl".toURL()

//If you want to read from a file you could do new File(path).text
def codeStyleXml = new XmlParser().parseText(codeStyleUrl.text)
codeStyleXml.children().each { option ->
projectSettingsNode.append(option)
}
}

这假定您的带有代码样式首选项的 xml 遵循以下格式:

<?xml version="1.0" encoding="UTF-8"?>
<code_scheme name="X">
<option name="CLASS_COUNT_TO_USE_IMPORT_ON_DEMAND" value="6" />
<option name="NAMES_COUNT_TO_USE_IMPORT_ON_DEMAND" value="9" />

我认为这是从 IntelliJ 导出首选项时的标准格式。

关于xml - 将自定义代码样式 xml 传递给 gradle idea 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26108228/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com