es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Angular no se compila debido a una excepción de split indefinida.

Cuando intento construir mi proyecto usando ng build, obtengo la siguiente excepción:

Ocurrió una excepción no controlada: No se puede leer la propiedad 'split' de indefinido. Consulte "/tmp/ng-6X0bro/angular-errors.log" para obtener más detalles.

Detalles de la excepción en el archivo de registro:

TypeError: No se puede leer la propiedad 'split' de indefinido en WorkspaceNodeModulesArchitectHost.resolveBuilder (/home/ahmet/Qimia/tutorial-projects/expense-manager/node_modules/@angular-devkit/architect/node/node-modules-architect-host.js:27:55) en BuildCommand.initialize (/home/ahmet/Qimia/tutorial-projects/expense-manager/node_modules/@angular/cli/models/architect-command.js:71:63) en BuildCommand.validateAndRun (/home/ahmet/Qimia/tutorial-projects/expense-manager/node_modules/@angular/cli/models/command.js:124:9) en Object.runCommand (/home/ahmet/Qimia/tutorial-projects/expense-manager/node_modules/@angular/cli/models/command-runner.js:186:24) en default_1 (/home/ahmet/Qimia/tutorial-projects/expense-manager/node_modules/@angular/cli/lib/cli/index.js:54:31)

y abrí el archivo node-modules-architect-host-js donde ocurre la excepción:

/**
 * Resuelve un constructor. Esto debe ser una cadena que se usará en una `importación()` dinámica. Debe generar un error si no se encuentra ningún constructor. La importación dinámica generará un error si no es compatible.
 * @param builderStr El nombre del constructor a utilizar.
 * @returns Toda la información necesaria para el propio constructor.
 */
resolveBuilder(builderStr) {
    const [packageName, builderName] = builderStr.split(':', 2);
    if (!builderName) {
        throw new Error('No se especificó ningún nombre de constructor.');
    }
Tags:  

Answer

  1. Avatar for davy.ai

    Esta excepción ocurre cuando el comando ng build no puede leer la propiedad ‘split’ de undefined. Este mensaje de error suele ir acompañado de un archivo de registro que indica más detalles sobre la excepción. En este caso, el archivo de registro indica que el error ocurrió en el archivo ‘node-modules-architect-host.js’.

    El problema está relacionado con el método resolveBuilder() en este archivo, que se utiliza para resolver un constructor. El método intenta dividir el parámetro builderStr mediante el carácter dos puntos (:). Si no se encuentra el builderName, se lanza un error.

    Para resolver este problema, es posible que deba verificar los parámetros pasados al comando ng build o verificar si las dependencias requeridas están instaladas en el proyecto. También puede ser útil actualizar la versión de Angular CLI a la última versión disponible.

Comments are closed.