Commit 730583c5 authored by xiezhi's avatar xiezhi

fix makefile

parent d47437e6
...@@ -17,8 +17,11 @@ RUN chmod +x docker-entrypoint.sh ...@@ -17,8 +17,11 @@ RUN chmod +x docker-entrypoint.sh
# 编译Java程序 # 编译Java程序
RUN make install RUN make install
# 创建JAR文件 # 创建JAR文件 (直接在Dockerfile中创建)
RUN make jar RUN mkdir -p build && \
cd build && \
echo "Main-Class: com.example.HelloWorld" > manifest.txt && \
jar cfm hello-world.jar manifest.txt -C classes .
# 设置环境变量 # 设置环境变量
ENV APP_PORT_1=8080 ENV APP_PORT_1=8080
......
...@@ -16,14 +16,22 @@ if ! command -v java &> /dev/null; then ...@@ -16,14 +16,22 @@ if ! command -v java &> /dev/null; then
exit 1 exit 1
fi fi
# 检查编译后的类文件是否存在 # 检查JAR文件或编译后的类文件
if [ ! -d "build/classes" ]; then if [ -f "build/hello-world.jar" ]; then
echo "使用JAR文件启动HTTP服务器..."
echo "服务器将在端口 ${APP_PORT_1:-8080} 上运行"
echo "=========================================="
exec java -jar build/hello-world.jar
elif [ -d "build/classes" ]; then
echo "使用类文件启动HTTP服务器..."
echo "服务器将在端口 ${APP_PORT_1:-8080} 上运行"
echo "=========================================="
exec java -cp build/classes com.example.HelloWorld
else
echo "编译Java源代码..." echo "编译Java源代码..."
make install make install
echo "启动HTTP服务器..."
echo "服务器将在端口 ${APP_PORT_1:-8080} 上运行"
echo "=========================================="
exec java -cp build/classes com.example.HelloWorld
fi fi
# 运行HTTP服务器
echo "启动HTTP服务器..."
echo "服务器将在端口 ${APP_PORT_1:-8080} 上运行"
echo "=========================================="
exec java -cp build/classes com.example.HelloWorld
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment