No se puede requerir(‘electron’) de forma exitosa al compilar y ejecutar el código fuente de VSCode.
Soy un traductor de documentos de TI al español. Traduce lo siguiente al español. No traduzcas el código y la salida en markdown
Estoy ejecutando vscode a partir del código fuente y siguiendo los siguientes pasos:
1. descargar el código fuente de vscode (versión: 1.63.0)
"name": "code-oss-dev",
"version": "1.63.0",
"distro": "1aa3ab55b3cceca22ca6d647dc0095d562d23c8d",
2. correr yarn
para instalar los paquetes.
3. correr yarn watch
para construir y finalizar correctamente.
......
[watch-extensions] [23:54:02] Se terminó de empaquetar la extensión de funciones de lenguaje de marcado multimedia sin errores.
[watch-extensions] [23:54:02] Se terminó de empaquetar la extensión de navegador simple de multimedia sin errores.
[watch-extensions] [23:54:14] Se terminó la compilación de extensiones sin errores después de 44266 ms.
[watch-client] [23:55:24] Se terminó la compilación sin errores después de 111430 ms.
- correr
./scripts/code.sh
para lanzar pero falló.
“`
localhost:vscode-main$ ./scripts/code.sh
yarn run v1.22.10
$ node build/lib/electron
✨ Se terminó en 3.27s.
[00:00:37] Sincronizando las extensiones incorporadas…
[00:00:37] Puedes gestionar las extensiones incorporadas con la bandera –builtin.
[00:00:38] Descargando extensión: ms-vscode.references-view@0.0.81 …
[00:00:38] Descargando extensión: ms-vscode.js-debug-companion@1.0.15 …
[00:00:38] Descargando extensión: ms-vscode.js-debug@1.62.0 …
[00:00:38] Descargando extensión: ms-vscode.vscode-js-profile-table@0.0.18 …
[00:00:38] [marketplace] ms-vscode.vscode-js-profile-table ✔︎
[00:00:38] [marketplace] ms-vscode.references-view ✔︎
[00:00:38] [marketplace] ms-vscode.js-debug-companion ✔︎
[00:00:39] [marketplace] ms-vscode.js-debug ✔︎
/Users/xxx/vscode-main/out/main.js:28
app.allowRendererProcessReuse = false;
^</li>
</ol>TypeError: No se puede establecer la propiedad 'allowRendererProcessReuse' de undefined
en Object. & lt; anónimo & gt; (/Users/xxx/vscode-main/out/main.js:28:31)
en Module.compile (internal/modules/cjs/loader.js:1078:30)
en Object.Module. extensiones … js (internal/modules/cjs/loader.js:1108:10)
en Module.load (internal/modules/cjs/loader.js:935:32)
en Module. carga (internal/modules/cjs/loader.js:776:14)
en Function.f. carga (electron/js2c/asar bundle.js:5:12913)
en Function.executeUserEntryPoint [como runMain] (internal/modules/run main.js:72:12)
en internal/main/run tarea principal módulo.js:17:47
<code>
el código relacionado en main.js es
</code>
const { app, protocol, crashReporter } = require (& # 39; electron & # 39;);app.allowRendererProcessReuse = falso;
<h2>“`
agregué un registro
......
const { app, protocol, crashReporter } = require('electron');
const abc = require('electron'); //added
console.log(abc); //added
console.log('isString?', typeof abc === 'string'); //added
app.allowRendererProcessReuse = false;
el resultado eslocalhost:vscode-main$ ./scripts/code.sh yarn run v1.22.10 $ node build/lib/electron ✨ Se terminó en 2.07s. [00:11:51] Sincronizando las extensiones incorporadas... [00:11:51] Puedes gestionar las extensiones incorporadas con la bandera --builtin. [00:11:51] [marketplace] ms-vscode.references-view@0.0.81 ✔︎ [00:11:51] [marketplace] ms-vscode.js-debug-companion@1.0.15 ✔︎ [00:11:51] [marketplace] ms-vscode.js-debug@1.62.0 ✔︎ [00:11:51] [marketplace] ms-vscode.vscode-js-profile-table@0.0.18 ✔︎ /Users/xxx/vscode-main/node_modules/electron/dist/Electron.app/Contents/MacOS/Electron isString? verdadero /Users/xxx/vscode-main/out/main.js:30 app.allowRendererProcessReuse = false; ^</p> <p>TypeError: No se puede establecer la propiedad 'allowRendererProcessReuse' de undefined en Object. & lt; anónimo & gt; (/Users/xxx/vscode-main/out/main.js:30:31)
¿Por qué require (& # 39; electron & # 39;) se analiza como una cadena aquí?
davy.ai
Parece que la declaración
require('electron')
está siendo interpretada como una cadena debido a algún problema con el entorno de Node.js o el paquete de electrón. Esto puede causar que el objetoapp
sea indefinido, lo que resultará en el errorNo se puede establecer la propiedad 'allowRendererProcessReuse' de indefinido
.Para resolver este problema, podría intentar actualizar Node.js y/o electron a la última versión, o volver a instalar los paquetes. Además, también podría verificar si existen dependencias o variables de entorno conflictivas que estén causando este problema.