fix: 修复Assembly打包与启动脚本JAR查找问题
- assembly.xml: 主JAR放到根目录,移除lib目录
- Spring Boot fat jar已包含所有依赖
- 避免依赖JAR冗余和混淆
- start.sh: 优化JAR文件查找逻辑
- 优先查找根目录: ${APP_HOME}/${APP_NAME}.jar
- fallback到lib目录(向后兼容)
- 添加JAR_FILE到启动日志输出
This commit is contained in:
parent
151f780900
commit
b8044c3769
@ -48,13 +48,13 @@
|
|||||||
</fileSet>
|
</fileSet>
|
||||||
</fileSets>
|
</fileSets>
|
||||||
|
|
||||||
<dependencySets>
|
<!-- 主JAR文件放到根目录(Spring Boot fat jar已包含所有依赖) -->
|
||||||
<!-- lib目录 - 所有依赖JAR -->
|
<files>
|
||||||
<dependencySet>
|
<file>
|
||||||
<outputDirectory>lib</outputDirectory>
|
<source>${project.build.directory}/${project.artifactId}.jar</source>
|
||||||
<useProjectArtifact>true</useProjectArtifact>
|
<outputDirectory>/</outputDirectory>
|
||||||
<scope>runtime</scope>
|
<destName>${project.artifactId}.jar</destName>
|
||||||
<fileMode>0644</fileMode>
|
<fileMode>0644</fileMode>
|
||||||
</dependencySet>
|
</file>
|
||||||
</dependencySets>
|
</files>
|
||||||
</assembly>
|
</assembly>
|
||||||
|
|||||||
@ -36,10 +36,22 @@ if [[ -z "${INSTANCE_NAME}" ]] || [[ "${INSTANCE_NAME}" == '\${APP_NAME}' ]]; th
|
|||||||
fi
|
fi
|
||||||
TENANT_ID=${TENANT_ID:-""}
|
TENANT_ID=${TENANT_ID:-""}
|
||||||
|
|
||||||
# 4. JAR文件路径
|
# 4. JAR文件路径(优先查找根目录的主JAR,再查找lib目录)
|
||||||
JAR_FILE=$(ls ${APP_HOME}/lib/*.jar 2>/dev/null | head -1)
|
# Spring Boot fat jar已包含所有依赖,主JAR在根目录
|
||||||
if [ -z "$JAR_FILE" ]; then
|
JAR_FILE="${APP_HOME}/${APP_NAME}.jar"
|
||||||
echo "Error: No JAR file found in ${APP_HOME}/lib/"
|
if [ ! -f "$JAR_FILE" ]; then
|
||||||
|
# fallback: 查找lib目录(兼容旧版打包结构)
|
||||||
|
JAR_FILE=$(ls ${APP_HOME}/lib/${APP_NAME}*.jar 2>/dev/null | head -1)
|
||||||
|
fi
|
||||||
|
if [ ! -f "$JAR_FILE" ]; then
|
||||||
|
# 最后尝试: lib目录任意jar(向后兼容)
|
||||||
|
JAR_FILE=$(ls ${APP_HOME}/lib/*.jar 2>/dev/null | head -1)
|
||||||
|
fi
|
||||||
|
if [ -z "$JAR_FILE" ] || [ ! -f "$JAR_FILE" ]; then
|
||||||
|
echo "Error: No JAR file found for ${APP_NAME}"
|
||||||
|
echo " Searched: ${APP_HOME}/${APP_NAME}.jar"
|
||||||
|
echo " Searched: ${APP_HOME}/lib/${APP_NAME}*.jar"
|
||||||
|
echo " Searched: ${APP_HOME}/lib/*.jar"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -85,6 +97,7 @@ echo "Starting ${INSTANCE_NAME}..."
|
|||||||
echo " APP_NAME: ${APP_NAME}"
|
echo " APP_NAME: ${APP_NAME}"
|
||||||
echo " INSTANCE_NAME: ${INSTANCE_NAME}"
|
echo " INSTANCE_NAME: ${INSTANCE_NAME}"
|
||||||
echo " APP_HOME: ${APP_HOME}"
|
echo " APP_HOME: ${APP_HOME}"
|
||||||
|
echo " JAR_FILE: ${JAR_FILE}"
|
||||||
echo " LOG_HOME: ${LOG_HOME}"
|
echo " LOG_HOME: ${LOG_HOME}"
|
||||||
echo " JAVA_OPTS: ${JAVA_OPTS}"
|
echo " JAVA_OPTS: ${JAVA_OPTS}"
|
||||||
if [ -n "${TENANT_ID}" ]; then
|
if [ -n "${TENANT_ID}" ]; then
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user