我已经构建了一个VS Code扩展,希望重用另一个扩展中的一些代码。由于构建路径上有重复的vscode
声明,因此无法编译。不知道这是一个真正的问题,还是我可以调整我的构建路径以使其工作?
错误如下:
lerna ERR! > vscode-sample-with-dependency@1.0.0 build /.../import-cost/packages/vscode-sample-with-dependency
lerna ERR! > tsc -p ./
lerna ERR!
lerna ERR! node_modules/vscode/vscode.d.ts(11,15): error TS2451: Cannot redeclare block-scoped variable 'version'.
lerna ERR! node_modules/vscode/vscode.d.ts(239,15): error TS2300: Duplicate identifier 'Position'.
lerna ERR! node_modules/vscode/vscode.d.ts(358,15): error TS2300: Duplicate identifier 'Range'.
lerna ERR! node_modules/vscode/vscode.d.ts(459,15): error TS2300: Duplicate identifier 'Selection'.
lerna ERR! node_modules/vscode/vscode.d.ts(504,3): error TS2300: Duplicate identifier 'Keyboard'.
... and many more ...
此处提供示例项目: https://github.com/guw/import-cost(commit c184a4c2)
重现:
答案 0 :(得分:1)
尝试将此映射添加到tsconfig.json
"baseUrl": "",
"paths": {
"vscode": ["node_modules/vscode"]
}
此问题似乎是此问题的结果。请参阅此处以供参考。 https://github.com/Microsoft/TypeScript/issues/6496#issuecomment-351435136