Ошибка активации расширения vscode: не удается найти модуль с не относительным импортом

Я работаю над расширением Visual Studio Code, где использую не относительный импорт в машинописном тексте, например:

import ModuleA from 'modules/ModuleA';

Где фактическая папка для ModuleA - это src/modules/ModuleA, а tsconfig.json выглядит следующим образом, где я указываю src как baseUrl:

{
  "compilerOptions": {
    "baseUrl": "./src",
    "module": "commonjs",
    "target": "es6",
    "outDir": "out",
    "noImplicitAny": true,
    "suppressImplicitAnyIndexErrors": true,
    "lib": [
      "es6"
    ],
    "sourceMap": true,
    "strictNullChecks": true,
    "experimentalDecorators": true,
    "moduleResolution": "node"
  },
  "exclude": [
    "node_modules",
    ".vscode-test"
  ]
}

Все компилируется и строится нормально, однако, когда я пытаюсь запустить расширение для тестирования, я получаю сообщение об ошибке: Activating extension failed: Cannot find module 'modules/ModuleA'. Мой .vscode/launch.json файл, который я использую для запуска расширения, выглядит так:

// A launch configuration that compiles the extension and then opens it inside a new window
{
  "version": "0.1.0",
  "configurations": [
    {
      "name": "Launch Extension",
      "type": "extensionHost",
      "request": "launch",
      "runtimeExecutable": "${execPath}",
      "args": ["--extensionDevelopmentPath=${workspaceRoot}" ],
      "stopOnEntry": false,
      "sourceMaps": true,
      "outFiles": ["${workspaceRoot}/out"],
      "preLaunchTask": "build",
      "internalConsoleOptions" : "openOnSessionStart"
  }
  ]
}

Как заставить работать не относительные пути для разработки расширений vscode?


person socketman    schedule 04.04.2017    source источник
comment
Почему ты хочешь заняться внебрачным? Вероятно, вам не следует использовать baseUrl для этого. Попробуйте сослаться на него напрямую, используя относительный путь: ./module/ModuleA (при условии, что ваш код находится под src   -  person unional    schedule 04.04.2017


Ответы (1)


У меня похожий опыт, я переустанавливаю узел той же версии, и проблема решена.

Я использую Mac, поэтому:

sudo rm -rf /usr/local/lib/node_modules/npm
brew reinstall node

Ссылка: Ошибка: не удается найти модуль ».. /lib/utils/unsupported.js 'при использовании Ionic

person Bill Chen    schedule 17.02.2020