gradle 在生成vscode扩展时传递扩展名(vsix)

bvuwiixz  于 2022-11-14  发布在  Vscode
关注(0)|答案(2)|浏览(192)

我目前正在为多个平台构建vscode扩展(扩展包括jre),我在构建vscode扩展时传递扩展名。
我发现这个article,但在Gradle中,我应该设置扩展名吗?
软件包. json

扩展名被package.json名称覆盖。

构建.gradle

task buildLinuxExtension(type: NpxTask) {
    description "Build the vsix extension package"
    dependsOn compileLinuxExtension
    command = 'cd'
    args = ['LinuxExtension']
    command = 'vsce'
    args = ['package']
}
``
ctrmrzij

ctrmrzij1#

在调用vsce生成扩展包之前,可以调用类似sed的命令,将package.json中的"name": "test",替换为"name": "LinuxExtension",(如果需要)。
通过搜索引擎,您可以找到数十年来有关sed或类似命令行工具的知识。

mnemlml8

mnemlml82#

我们可以在build.gradle中解析package.json并设置名称。

import groovy.json.JsonSlurper
import groovy.json.JsonOutput

def void setExtensionName(String extensionName){
 def packageSlurper = new JsonSlurper()
 def packageJson = packageSlurper.parse file('package.json')
 packageJson.name = extensionName
 def json_str = JsonOutput.toJson(packageJson)
 def json_beauty = JsonOutput.prettyPrint(json_str)
 File file = new File("package.json")
 file.write(json_beauty)
}

相关问题