Pular para o conteúdo principal

Detecção automática de PHP e Node

Escolha Automático no seletor de PHP ou Node do projeto para usar suas declarações. O LaraEnv lê o checkout usado pela operação, incluindo um worktree selecionado, e escolhe um runtime instalado compatível.

RuntimePrioridade, da maior para a menor
PHPEscolha manual do projeto → .php-version → composer.json require.php → PHP global
NodeEscolha manual do projeto → .nvmrc → .node-version → package.json engines.node → Node global
Gerenciador de pacotespackage.json packageManager → lockfile → npm

Selecionar Automático remove a escolha manual. A detecção não reescreve as declarações do projeto.

Runtimes efetivos e suas origens nos detalhes do projeto

Requisitos e versões ausentes​

Com um requisito declarado, o LaraEnv escolhe a maior versão estável instalada compatível usando metadados verificados do executável. Arquivos com versões parciais como 8.3 e v22 selecionam essa série. As regras de intervalos do Composer e npm são avaliadas separadamente; caret, tilde, comparações, curingas, AND e OR são aceitos. Arquivos de versão Node também aceitam node, stable e lts/*.

Declarações inválidas ou instalações compatíveis ausentes mostram orientação. O LaraEnv não substitui silenciosamente um requisito declarado pela versão global. Use Downloads para escolher e instalar uma versão adequada; a detecção nunca a instala automaticamente.

Uma escolha manual continua efetiva, com aviso quando conflita com um requisito. Sem declaração, vale o runtime global gerenciado. Sem escolha global, é usada a maior instalação estável verificada. O comportamento existente do PATH do sistema continua disponível somente quando não há requisito nem instalação gerenciada.

Alterações e comandos em execução​

O LaraEnv atualiza a detecção após a criação de projetos, clones e edições relevantes de manifests ou arquivos de versão. Novos terminais, agentes, servidores Dev, workers de fila, comandos MCP e crons usam a mesma resolução. Uma escolha explícita de PHP no cron tem prioridade.

Terminais e processos existentes mantêm o runtime até serem reiniciados. Alterar PHP ou a raiz pública de um checkout servido atualiza sua configuração web; um novo pool PHP precisa iniciar com sucesso antes de redirecionar o site em execução. Requisitos ausentes ou inválidos preservam a última configuração servida enquanto o problema é informado.

Os pools PHP são compartilhados por versão, não por projeto. Veja Versões do PHP.

Relacionado​