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.

¿Cómo puedo recuperar los paquetes en cada repositorio de Lerna después de haber eliminado los node_modules de las subcarpetas?

Mi estructura de repositorio es la siguiente:

codebook
-packages
  -clii
  -local-api
  -local-client
-lerna.json
-package.json

Instalé “local api” en “clii” y “local-client” en “local-api”, pero para publicar quería cambiar el nombre de “local-api” y “local-client”, así que cambié “local-api” a “@codebook/local-api” y “local-client” a “@codebook/local-client”. Luego ejecuté “lerna bootstrap”. Estaba obteniendo un error “npm ERR! code E404”. Así que eliminé “node_modules” en cada subcarpeta. Pensé que “lerna bootstrap” enlazaría los nuevos archivos e instalaría los paquetes, pero no está funcionando. Ahora faltan todos los paquetes de cada subrepositorio. No puedo hacer “npm install” en cada uno de estos repositorios. ¿Qué debo hacer para instalar todos los paquetes?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para resolver este problema, puedes intentar los siguientes pasos:

    1. Elimina la caché local de npm ejecutando el siguiente comando:
      npm cache clean --force
      
    2. Elimina la carpeta node_modules en el directorio raíz y todas las subcarpetas.
    3. Actualiza los archivos package.json en cada subcarpeta con los nombres correctos de los paquetes (@codebook/local-api y @codebook/local-client).

    4. Actualiza las dependencias en los archivos package.json para usar los nombres correctos de los paquetes.

    5. Ejecuta el siguiente comando en el directorio raíz:

      lerna bootstrap
      

      Esto instalará todas las dependencias para cada subcarpeta y creará enlaces simbólicos entre ellas.

    Si esto no funciona, puedes intentar los siguientes pasos:

    1. Elimina las subcarpetas (clii, local-api y local-client) del directorio raíz.
  2. Crea nuevos directorios vacíos con los nombres correctos de los paquetes (@codebook/local-api y @codebook/local-client).

  3. Copia el contenido de las subcarpetas originales a los nuevos directorios.

  4. Actualiza los archivos package.json en cada subcarpeta con los nombres correctos de los paquetes.

  5. Ejecuta el siguiente comando en el directorio raíz:

    lerna bootstrap
    

    Esto instalará todas las dependencias para cada subcarpeta y creará enlaces simbólicos entre ellas.

Comments are closed.