egoist / vue-monaco

MonacoEditor component for Vue.js
MIT License
694 stars 127 forks source link

Error: Cannot find module 'monaco-editor\esm\vs\editor\contrib\gotoSymbol\goToCommands' #71

Open vakhariasohil opened 4 years ago

vakhariasohil commented 4 years ago

I am using below versions for monaco editor and its plugin

"monaco-editor": "0.19.0",
"monaco-editor-webpack-plugin": "1.8.1"

I am getting below error

 ...\node_modules\webpack-cli\bin\cli.js:265
                              throw err;
                              ^

 Error: Cannot find module 'monaco-editor\esm\vs\editor\contrib\gotoSymbol\goToCommands'
     at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
     at Function.resolve (...\node_modules\v8-compile-cache\v8-compile-cache.js:166:23)
     at resolveMonacoPath (...\node_modules\monaco-editor-webpack-plugin\out\index.js:26:20)
     at use.options.pre.featurePaths.map (...\node_modules\monaco-editor-webpack-plugin\out\index.js:161:63)
     at Array.map (<anonymous>)
     at createLoaderRules (...\node_modules\monaco-editor-webpack-plugin\out\index.js:161:43)
     at MonacoEditorWebpackPlugin.apply (...\node_modules\monaco-editor-webpack-plugin\out\index.js:80:23)
     at webpack (...\node_modules\webpack\lib\webpack.js:47:13)
     at processOptions (...\node_modules\webpack-cli\bin\cli.js:256:16)
     at yargs.parse (...\node_modules\webpack-cli\bin\cli.js:373:3)
     at Object.parse (...\node_modules\webpack-cli\node_modules\yargs\yargs.js:567:18)
     at ...\node_modules\webpack-cli\bin\cli.js:49:8
     at Object.<anonymous> (...\node_modules\webpack-cli\bin\cli.js:375:3)
     at Module._compile (internal/modules/cjs/loader.js:778:30)
     at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
     at Module.load (internal/modules/cjs/loader.js:653:32)
     at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
     at Function.Module._load (internal/modules/cjs/loader.js:585:3)
     at Module.require (internal/modules/cjs/loader.js:692:17)
     at require (internal/modules/cjs/helpers.js:25:18)
     at Object.<anonymous> (...\node_modules\webpack\bin\webpack.js:156:2)
     at Module._compile (internal/modules/cjs/loader.js:778:30)
     at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
     at Module.load (internal/modules/cjs/loader.js:653:32)
     at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
     at Function.Module._load (internal/modules/cjs/loader.js:585:3)
     at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)
     at startup (internal/bootstrap/node.js:283:19)
     at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)
error: Error: webpack failed! [code 1]

I cannot find any recent issue or Stackoverflow page for this error with given version.

Could you please help?

iscarecrow commented 4 years ago

+1

dzcpy commented 4 years ago

+2

jozsefsallai commented 4 years ago

This is an issue with monaco-editor-webpack-plugin, not vue-monaco. There is a workaround for it though: https://github.com/microsoft/monaco-editor-webpack-plugin/issues/92#issuecomment-569589854

It might also complain about the abap syntax highlighter. Exclude that too if that happens to you.

Here's what a plugin declaration looks like with those disabled:

new MonacoWebpackPlugin({
  features: [ '!gotoSymbol' ],
  languages: [ '!abap' ]
})
timoschwarzer commented 4 years ago

I don't think it's an issue with monaco-editor-webpack plugin.

vue-monaco depends on monaco-editor-webpack-plugin ^1.7.0 which currently resolves to 1.8.2. vue-monaco depends on monaco-editor ^0.18.0 which currently resolves to 0.18.1.

monaco-editor-webpack-plugin 1.8.2 has monaco-editor ^0.19.0 as peer dependency and according to https://github.com/microsoft/monaco-editor-webpack-plugin/issues/92#issuecomment-571148323 monaco-editor-webpack-plugin 1.18.1 is incompatible with monaco-editor 0.18.1.

As far as I can tell the solution would be vue-monaco updating to monaco-editor ^0.19.0

cinderisles commented 4 years ago

I had this issue and solved it by explicitly installing monaco-editor and monaco-editor-webpack-plugin from npm alongside vue-monaco in my project.

My package.json:

"dependencies": {
    // ...
    "monaco-editor": "^0.20.0",
    "vue-monaco": "^1.1.0"
},
"devDependencies": {
    // ...
    "monaco-editor-webpack-plugin": "^1.7.0"
},

so just try:

yarn add -D monaco-editor-webpack-plugin
yarn add monaco-editor

or its npm equivalent

vakhariasohil commented 4 years ago

The issue is resolved. Looks like 'goToCommands' was not available in the version itself. I had to change both monaco-editor and monaco-editor-webpack-plugin for this.

BTW there are few version of the plugin missing/not available supporting monaco-editor versions. Please take a look in to it.

Poikilos commented 4 years ago

I have the error as well.

I tried:

git clone https://github.com/reactide/reactide.git
git checkout 3.0-release
npm install
npm run webpack-production

and the error occurs, so I try:

npm install monaco-editor monaco-editor-webpack-plugin 
npm run webpack-production

but that didn't help, so I try:

npm install vue-monaco
npm run webpack-production

"A complete log of this run": https://pastebin.com/KiLJyy7y

...still no success, so tried "alongside vue-monaco" @cavatron don't really know what that means, please explain. I tried:

cd node_modules/vue-monaco
npm install monaco-editor monaco-editor-webpack-plugin 
cd ..\..
npm run webpack-production

@cavatron I tried mimicking your package.json:

not tried yet

@cavatron or someone, should that upgrade and downgrade the two packages respectively? Is there any point in that now, and should I post this somewhere else at this point?