返回 Bug 清单
BUG-1415project-13高已修复docker-build
Dockerfile.prod 假设 fat jar 但 mvn package 没 repackage → no main manifest attribute
发现:2026-10-27验证:2026-10-27置信度:80%
症状
sudo bash project-13-prod-backend.sh 启动新容器后 CrashLoopBackOff,docker logs 显示 'no main manifest attribute, in app.jar'
根因
Dockerfile.prod 假设 target/*.jar 是 Spring Boot fat jar(含 JarLauncher manifest),但服务器上用 `mvn package -DskipTests` 只打了普通瘦 jar(无 repackage)→ java -jar app.jar 失败。原始 Dockerfile 是多阶段构建(FROM maven...COPY src...RUN mvn package)能正常打 fat jar,但被 Dockerfile.prod 单阶段替代后暴露问题。
修复方案
服务器上用 maven:3.9-eclipse-temurin-17 容器跑 `mvn package spring-boot:repackage -DskipTests`(加 spring-boot:repackage goal)→ 产物含 Main-Class: JarLauncher + Spring-Boot-Lib → Dockerfile.prod COPY 后能正常启动。或者改回原始多阶段 Dockerfile(自动 repackage)。
错误签名
no main manifest attribute, in app.jar技术信息
来源项目
project-13
涉及文件
backend/Dockerfile.prod
标签
project-13, mcp-reported, source-agent