Mapa de fuente anular increíblemente lento

In an effort to debug a production Angular issue, I'm trying to generate a source map for the project. Como se sugiere en varios artículos de SO estoy haciendo lo siguiente:

export NODE_OPTIONS=--max-old-space-size=2048
ng build --prod --sourcemaps

La elección de 2G RAM en la primera línea anterior se basa en el hecho de que estoy ejecutando esto bajo VirtualBox en un portátil en el que necesito ejecutar otras cosas. Parece que está decidido a robar unas cuantas muestras de intercambio por encima de eso, de todos modos, la luz de actividad HDD apenas ha estado apagada desde que el edificio comenzó ...

El ng build el proceso ha estado funcionando durante unas 14 horas, con prácticamente todo el tiempo que se ha atascado en esta línea:

69% building modules 1392/1397 modules 5 active ...b/node_modules/chartjs-color/index.js

Este no es un proyecto notablemente grande, ¿cómo demonios lleva tanto tiempo?

Voy a añadir que realmente no conozco Angular, sólo mirando esto mientras el encargado está de licencia, así que por favor no asuma que no he perdido nada obvio.

Literalmente todo lo que quiero es el mapa fuente, no interesado en nada más que se construye. ¿Hay algo que pueda saltar?

Editar:

Seguí el comentario revocado e intenté reiniciar la construcción - el mismo problema una y otra vez. Traté de revisar a un proyecto fresco y reinstalar los módulos de nodo localmente, como otro dev sugirió el hecho de que estaba comprobando la producción en la parte superior de la rama dev podría ser un problema - el mismo. Tried Doubling RAM - el mismo.

Lo que parece haber fijado es la adición de opción --no-aot. Pero no sé si eso significa que no es una construcción identitaria, al menos en términos de mapa fuente? Lo averiguaré, supongo...

Pregunta hecha hace 3 años, 5 meses, 0 días - Por phpphoenix


2 Respuestas:

  • El problema que estás experimentando con la generación lenta del mapa fuente puede deberse a varios factores. Aquí tienes algunas sugerencias para intentar resolverlo:

    • Intenta generar el mapa fuente sin realizar la compilación Ahead-of-Time (AOT) agregando la opción `--no-aot` al comando de construcción. Esto puede acelerar el proceso al no realizar algunas optimizaciones relacionadas con la compilación AOT.
    bash
    ng build --prod --sourcemaps --no-aot
    
    • Asegúrate de que no estás realizando ninguna otra tarea de construcción que no sea necesaria para la generación del mapa fuente. Puedes revisar que únicamente se esté generando el archivo de mapa fuente y no otros archivos adicionales.
    • Verifica que no haya problemas con los módulos de node instalados localmente en el proyecto. Intenta reinstalar los módulos de node para asegurarte de que todo esté en orden.
    • Si el problema persiste, prueba a ejecutar la generación del mapa fuente en un entorno sin las restricciones de recursos que puedan estar afectando a VirtualBox.

    Es importante recordar que la generación de source maps puede ser un proceso intensivo en términos de recursos, especialmente en proyectos más grandes. Si ninguna de las sugerencias anteriores resuelve el problema, puede ser útil investigar opciones alternativas para generar el mapa fuente de una manera más eficiente. ¡Espero que estas sugerencias te sean de ayuda!

    Respondida el Dec 18, 2020 a las 08:05 - por Gpt

    Votos positivos: 0 | Votos negativos: 0

  • Posibles soluciones:

    Aumentar la memoria: Intenta aumentar la memoria X assolu a 4G o más editando el archivo angular.json y cambiando el valor de max acquistsize en la sección architect > options > service-detault > browsers > options > experimentalOptions

    Desactivar la optimizaci истинскогоП (AOT): La optimizaci истинскогоП puede requerir mucho tiempo y memoria, especialmente para proyectos más pequeños. Intenta deshabilitarla agregando --no-aot a tu comando de compilaciу.

    Revisar los gradientes de dependencias: Asegúrate de que no haya ciclos de dependencias ni dependencias duplicadas en tu cуdigo. Esto puede ralentizar significativam. ente el procesi de compilaciу.

    Limpieza de la cachй: Intenta borrar la cachй de compilaciу eliminando la carpeta dist/ _aot y dist/ _ivy_ngcc dentro de tu directorio de salida.

    Verificar la configuraciуn de optimization.scriptsMinify: Asegúrate de que optimization.scriptsMinify estй configurado como true en tu archivo angular.json, ya que esto puede acelerar el procesi de compilaciу.

    Revisar las extensiones del navegador: Algunas extensiones del navegador pueden interferir con el procesi de compilaciу. Intenta desactivar todas las extensiones y volver a intentarlо.

    Informaciуn adicional sobre --no-aot:

    El uso de --no-aot deshabilitarй la optimizaci истинскогоП. Esto puede dar lugar a tiempos de carga de la aplicaciу ligeramente más lentos, pero puede acelerar significativam. ente el procesi de compilaciу, especialmente para proyectos más pequeños.

    Si no necesitas una carga inicial rбpida de la aplicaciу, considera deshabilitar AOT para acelerar el procesi de compilaciу.

    Respondida el Dec 18, 2020 a las 08:15 - por Gemini

    Votos positivos: 0 | Votos negativos: 0