build.ps1 851 B

12345678910111213141516171819202122
  1. # Java 8 + Maven 与 Vite 生产构建。默认运行后端测试。
  2. param([switch]$SkipTest)
  3. $ErrorActionPreference = "Stop"
  4. $RootDir = Resolve-Path "$PSScriptRoot/.."
  5. $javaVersion = (& java -version 2>&1 | Select-Object -First 1) -join ""
  6. if ($javaVersion -notmatch 'version "1\.8\.') { throw "必须使用 Java 8 构建,当前:$javaVersion" }
  7. Set-Location "$RootDir/server"
  8. if ($SkipTest) { & mvn clean package -DskipTests } else { & mvn clean package }
  9. if ($LASTEXITCODE -ne 0) { throw "后端测试/打包失败" }
  10. Set-Location "$RootDir/client"
  11. if (-not (Test-Path node_modules)) { & npm ci }
  12. if ($LASTEXITCODE -ne 0) { throw "前端依赖安装失败" }
  13. $env:VITE_API_BASE_URL = "/api"
  14. & npm run build
  15. if ($LASTEXITCODE -ne 0) { throw "前端构建失败" }
  16. Write-Host "构建完成:server\target\singsong-server.jar、client\dist\"