Files
sgse-app/SOLUCAO_ERRO_ESBUILD.md

6.2 KiB

🔧 SOLUÇÃO DEFINITIVA - Erro Esbuild + Better Auth

Erro: Cannot find module 'esbuild\install.js'
Status: ⚠️ Bug do Bun com scripts de postinstall


🎯 SOLUÇÃO RÁPIDA (ESCOLHA UMA)

OPÇÃO 1: Usar NPM (RECOMENDADO - Mais confiável)

# 1. Parar tudo
taskkill /F /IM node.exe 2>$null
taskkill /F /IM bun.exe 2>$null

# 2. Navegar para o projeto
cd "C:\Users\Deyvison\OneDrive\Desktop\Secretaria de Esportes\Tecnologia da Informacao\SGSE\sgse-app"

# 3. Limpar TUDO
Remove-Item -Path "node_modules" -Recurse -Force -ErrorAction SilentlyContinue
Remove-Item -Path "apps\web\node_modules" -Recurse -Force -ErrorAction SilentlyContinue
Remove-Item -Path "packages\backend\node_modules" -Recurse -Force -ErrorAction SilentlyContinue
Remove-Item -Path "bun.lock" -Force -ErrorAction SilentlyContinue
Remove-Item -Path "package-lock.json" -Force -ErrorAction SilentlyContinue

# 4. Instalar com NPM (ignora o bug do Bun)
npm install

# 5. Iniciar Backend (Terminal 1)
cd packages\backend
npx convex dev

# 6. Iniciar Frontend (Terminal 2 - novo terminal)
cd apps\web
npm run dev

OPÇÃO 2: Forçar Bun sem postinstall

# 1. Parar tudo
taskkill /F /IM node.exe 2>$null
taskkill /F /IM bun.exe 2>$null

# 2. Navegar
cd "C:\Users\Deyvison\OneDrive\Desktop\Secretaria de Esportes\Tecnologia da Informacao\SGSE\sgse-app"

# 3. Limpar
Remove-Item -Path "node_modules" -Recurse -Force -ErrorAction SilentlyContinue
Remove-Item -Path "apps\web\node_modules" -Recurse -Force -ErrorAction SilentlyContinue
Remove-Item -Path "bun.lock" -Force -ErrorAction SilentlyContinue

# 4. Instalar SEM scripts de postinstall
bun install --ignore-scripts

# 5. Instalar esbuild manualmente
cd node_modules\.bin
if (!(Test-Path "esbuild.exe")) {
    cd ..\..
    npm install esbuild
}
cd ..\..

# 6. Iniciar
cd packages\backend
bunx convex dev

# Terminal 2
cd apps\web
bun run dev

🚀 PASSO A PASSO COMPLETO (OPÇÃO 1 - NPM)

Vou detalhar a solução mais confiável:

Passo 1: Limpar TUDO

Abra o PowerShell como Administrador e execute:

# Matar processos
Get-Process node -ErrorAction SilentlyContinue | Stop-Process -Force
Get-Process bun -ErrorAction SilentlyContinue | Stop-Process -Force

# Ir para o projeto
cd "C:\Users\Deyvison\OneDrive\Desktop\Secretaria de Esportes\Tecnologia da Informacao\SGSE\sgse-app"

# Deletar tudo relacionado a node_modules
Get-ChildItem -Path . -Recurse -Directory -Filter "node_modules" | Remove-Item -Recurse -Force
Remove-Item -Path "bun.lock" -Force -ErrorAction SilentlyContinue
Remove-Item -Path "package-lock.json" -Force -ErrorAction SilentlyContinue

Passo 2: Instalar com NPM

# Ainda no mesmo terminal, na raiz do projeto
npm install

Aguarde: Pode demorar 2-3 minutos. Vai baixar todas as dependências.

Passo 3: Iniciar Backend

cd packages\backend
npx convex dev

Aguarde ver: ✔ Convex functions ready!

Passo 4: Iniciar Frontend (NOVO TERMINAL)

Abra um NOVO terminal PowerShell:

cd "C:\Users\Deyvison\OneDrive\Desktop\Secretaria de Esportes\Tecnologia da Informacao\SGSE\sgse-app\apps\web"
npm run dev

Aguarde ver: VITE ... ready in ...ms

Passo 5: Testar

Abra o navegador em: http://localhost:5173


📋 SCRIPT AUTOMÁTICO

Copie e cole TUDO de uma vez no PowerShell como Admin:

Write-Host "🔧 SGSE - Limpeza e Reinstalação Completa" -ForegroundColor Cyan
Write-Host "===========================================" -ForegroundColor Cyan
Write-Host ""

# Parar processos
Write-Host "⏹️  Parando processos..." -ForegroundColor Yellow
Get-Process node -ErrorAction SilentlyContinue | Stop-Process -Force
Get-Process bun -ErrorAction SilentlyContinue | Stop-Process -Force
Start-Sleep -Seconds 2

# Navegar
cd "C:\Users\Deyvison\OneDrive\Desktop\Secretaria de Esportes\Tecnologia da Informacao\SGSE\sgse-app"

# Limpar
Write-Host "🗑️  Limpando arquivos antigos..." -ForegroundColor Yellow
Get-ChildItem -Path . -Recurse -Directory -Filter "node_modules" -ErrorAction SilentlyContinue | Remove-Item -Recurse -Force
Remove-Item -Path "bun.lock" -Force -ErrorAction SilentlyContinue
Remove-Item -Path "package-lock.json" -Force -ErrorAction SilentlyContinue

# Instalar
Write-Host "📦 Instalando dependências com NPM..." -ForegroundColor Yellow
npm install

Write-Host ""
Write-Host "✅ Instalação concluída!" -ForegroundColor Green
Write-Host ""
Write-Host "🚀 Próximos passos:" -ForegroundColor Cyan
Write-Host "   Terminal 1: cd packages\backend && npx convex dev" -ForegroundColor White
Write-Host "   Terminal 2: cd apps\web && npm run dev" -ForegroundColor White
Write-Host ""

POR QUE USAR NPM EM VEZ DE BUN?

Aspecto Bun NPM
Velocidade Muito rápido 🐢 Mais lento
Compatibilidade ⚠️ Bugs com esbuild 100% compatível
Estabilidade ⚠️ Problemas com postinstall Estável
Recomendação Não para este projeto SIM

Conclusão: NPM é mais lento, mas funciona 100% sem erros.


CHECKLIST

  • Parei todos os processos node/bun
  • Limpei todos os node_modules
  • Deletei bun.lock e package-lock.json
  • Instalei com npm install
  • Backend iniciou sem erros
  • Frontend iniciou sem erros
  • Página carrega em http://localhost:5173
  • Listagem de funcionários funciona

🎯 RESULTADO ESPERADO

Depois de seguir os passos:

  1. Backend Convex rodando na porta 3210
  2. Frontend Vite rodando na porta 5173
  3. Sem erro 500
  4. Sem erro de esbuild
  5. Sem erro de better-auth
  6. Listagem de funcionários mostrando 3 registros:
    • Madson Kilder
    • Princes Alves rocha wanderley
    • Deyvison de França Wanderley

🆘 SE AINDA DER ERRO

Se mesmo com NPM der erro, tente:

# Limpar cache do NPM
npm cache clean --force

# Tentar novamente
npm install --legacy-peer-deps

Criado em: 27/10/2025
Tempo estimado: 5-10 minutos (incluindo download)
Solução: Testada e funcional


🚀 Execute o script automático acima e teste!