繁体   English   中英

如何从扩展代码中动态查询我的 VSCode 扩展版本?

[英]How to dynamically query my VSCode extension version from the extension code?

我正在为 VSCode 编写扩展。 我想从它自己的代码中获取扩展的运行时版本。 有没有办法做到这一点?

我找到VSCode.extensions.getExtension('myExtensionId').packageJSON但我不知道该怎么做。

我终于接近了。 使用:

VSCode.extensions.getExtension('publisher.myExtensionId').packageJSON.version

似乎可以解决问题。

您可以在激活函数中获取版本:

context.extension.packageJSON.version

其中context是激活函数中的 ExtensionContext 参数

激活扩展时,当前扩展上下文作为参数传递。 您可以使用 context.extensionPath 而不是硬编码的扩展 ID 字符串“publisher.myExtensionId”。

import * as Path from 'path';
import * as fs from 'fs';

export function activate(context: vscode.ExtensionContext) {
    var extensionPath = Path.join(context.extensionPath, "package.json");
    var packageFile = JSON.parse(fs.readFileSync(extensionPath, 'utf8'));

    if (packageFile) {
        console.log(packageFile.version);
    }

//......... rest

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM