test
This commit is contained in:
@@ -71,10 +71,18 @@ RUN chown -R root:root /root/.m2
|
||||
COPY src ./src
|
||||
|
||||
# 构建应用(使用国内镜像加速)
|
||||
RUN mvn clean package -DskipTests -B -s /root/.m2/settings.xml
|
||||
RUN mvn clean package -DskipTests -B -s /root/.m2/settings.xml -e
|
||||
|
||||
# 验证JAR文件是否生成
|
||||
RUN ls -la /build/target/point-strategy-*.jar || (echo "JAR文件生成失败" && exit 1)
|
||||
# 检查构建结果
|
||||
RUN echo "=== 检查构建结果 ===" && \
|
||||
ls -la /build/target/ && \
|
||||
echo "=== 查找所有 JAR 文件 ===" && \
|
||||
find /build/target -name "*.jar" -type f && \
|
||||
echo "=== 查找原始 JAR 文件 ===" && \
|
||||
ls -la /build/target/point-strategy-*.jar /build/target/*.jar 2>/dev/null || echo "未找到预期的 JAR 文件" && \
|
||||
echo "=== 复制正确的 JAR 文件 ===" && \
|
||||
cp /build/target/*.jar /build/app.jar && \
|
||||
ls -la /build/app.jar && file /build/app.jar
|
||||
|
||||
# ===== 运行阶段 =====
|
||||
# 使用更小的Alpine镜像
|
||||
@@ -119,8 +127,8 @@ RUN addgroup -g 1001 app \
|
||||
# 设置工作目录
|
||||
WORKDIR /app
|
||||
|
||||
# 从构建阶段复制jar文件
|
||||
COPY --from=builder /build/target/point-strategy-*.jar app.jar
|
||||
# 从构建阶段复制jar文件(使用通用的复制方式)
|
||||
COPY --from=builder /build/app.jar app.jar
|
||||
|
||||
# 验证JAR文件是否正确复制
|
||||
RUN ls -la app.jar && file app.jar
|
||||
|
||||
@@ -74,10 +74,18 @@ RUN chown -R root:root /root/.m2
|
||||
COPY src ./src
|
||||
|
||||
# 构建应用(使用国内镜像加速)
|
||||
RUN mvn clean package -DskipTests -B -s /root/.m2/settings.xml
|
||||
RUN mvn clean package -DskipTests -B -s /root/.m2/settings.xml -e
|
||||
|
||||
# 验证JAR文件是否生成
|
||||
RUN ls -la /build/target/point-strategy-*.jar || (echo "JAR文件生成失败" && exit 1)
|
||||
# 检查构建结果
|
||||
RUN echo "=== 检查构建结果 ===" && \
|
||||
ls -la /build/target/ && \
|
||||
echo "=== 查找所有 JAR 文件 ===" && \
|
||||
find /build/target -name "*.jar" -type f && \
|
||||
echo "=== 查找原始 JAR 文件 ===" && \
|
||||
ls -la /build/target/point-strategy-*.jar /build/target/*.jar 2>/dev/null || echo "未找到预期的 JAR 文件" && \
|
||||
echo "=== 复制正确的 JAR 文件 ===" && \
|
||||
cp /build/target/*.jar /build/app.jar && \
|
||||
ls -la /build/app.jar && file /build/app.jar
|
||||
|
||||
# 显示JAR文件信息
|
||||
RUN file /build/target/point-strategy-*.jar && ls -lh /build/target/point-strategy-*.jar
|
||||
@@ -144,8 +152,8 @@ RUN addgroup -g 1001 app \
|
||||
# 设置工作目录
|
||||
WORKDIR /app
|
||||
|
||||
# 从构建阶段复制jar文件
|
||||
COPY --from=builder /build/target/point-strategy-*.jar app.jar
|
||||
# 从构建阶段复制jar文件(使用通用的复制方式)
|
||||
COPY --from=builder /build/app.jar app.jar
|
||||
|
||||
# 验证JAR文件是否正确复制
|
||||
RUN ls -la app.jar && file app.jar
|
||||
|
||||
76
debug-maven-build.sh
Executable file
76
debug-maven-build.sh
Executable file
@@ -0,0 +1,76 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo "=== Maven 构建调试脚本 ==="
|
||||
echo
|
||||
|
||||
# 检查项目文件
|
||||
echo "🔍 检查项目文件:"
|
||||
if [ -f "pom.xml" ]; then
|
||||
echo "✓ pom.xml 存在"
|
||||
echo " 项目信息:"
|
||||
grep -E "<groupId>|<artifactId>|<version>" pom.xml | head -3
|
||||
else
|
||||
echo "❌ pom.xml 不存在"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -d "src" ]; then
|
||||
echo "✓ src 目录存在"
|
||||
echo " 源码结构:"
|
||||
find src -name "*.java" | wc -l | xargs echo " Java 文件数量:"
|
||||
else
|
||||
echo "❌ src 目录不存在"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -d "src/main/lib" ]; then
|
||||
echo "✓ lib 目录存在"
|
||||
echo " JAR 文件:"
|
||||
ls -la src/main/lib/*.jar 2>/dev/null | wc -l | xargs echo " JAR 文件数量:"
|
||||
else
|
||||
echo "❌ lib 目录不存在"
|
||||
fi
|
||||
|
||||
echo
|
||||
echo "🧪 本地 Maven 测试构建:"
|
||||
|
||||
# 创建临时目录进行测试构建
|
||||
mkdir -p temp-build
|
||||
cd temp-build
|
||||
|
||||
# 复制必要文件
|
||||
cp ../pom.xml .
|
||||
cp -r ../src .
|
||||
if [ -f "../settings.xml" ]; then
|
||||
cp ../settings.xml .
|
||||
fi
|
||||
|
||||
echo "开始 Maven 构建测试..."
|
||||
echo "这可能需要几分钟..."
|
||||
|
||||
# 执行构建
|
||||
if mvn clean compile -B -s settings.xml 2>&1 | tee build.log; then
|
||||
echo "✓ 编译成功"
|
||||
else
|
||||
echo "❌ 编译失败,查看 build.log"
|
||||
tail -20 build.log
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo
|
||||
echo "尝试打包..."
|
||||
if mvn package -DskipTests -B -s settings.xml 2>&1 | tee package.log; then
|
||||
echo "✓ 打包成功"
|
||||
echo "生成的文件:"
|
||||
ls -la target/*.jar 2>/dev/null || echo " 未找到 JAR 文件"
|
||||
ls -la target/ | grep -E "\.(jar|war)$" || echo " 未找到任何归档文件"
|
||||
else
|
||||
echo "❌ 打包失败,查看 package.log"
|
||||
tail -30 package.log
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cd ..
|
||||
echo
|
||||
echo "=== 调试完成 ==="
|
||||
echo "如果本地构建成功,问题可能在 Docker 环境中"
|
||||
Reference in New Issue
Block a user