Junior
Qual é o papel do arquivo package-lock.json num projeto?
sobes.tech IA
Resposta da IA
O ficheiro package-lock.json regista as versões exatas de todas as dependências instaladas, incluindo as suas subdependências. Isto garante a reprodutibilidade das compilações em diferentes máquinas e em diferentes momentos.
Papéis-chave:
- Fixação de versões: Garante que
npm installinstale exatamente as versões das bibliotecas usadas na compilação bem-sucedida do projeto. Isto é crítico para CI/CD e desenvolvimento em equipa. - Consistência: Previne o problema de "funciona na minha máquina", quando diferentes desenvolvedores ou servidores instalam versões diferentes de dependências devido a intervalos de versões no
package.json. - Aceleração da instalação: O gestor de pacotes pode usar
package-lock.jsonpara determinar a árvore exata de dependências e os caminhos para os pacotes descarregados, o que acelera o processo de instalação. - Verificação de integridade: Contém informações sobre os hashes dos pacotes, permitindo ao gestor verificar a sua integridade após o download.