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>
|
||||
</fileSets>
|
||||
|
||||
<dependencySets>
|
||||
<!-- lib目录 - 所有依赖JAR -->
|
||||
<dependencySet>
|
||||
<outputDirectory>lib</outputDirectory>
|
||||
<useProjectArtifact>true</useProjectArtifact>
|
||||
<scope>runtime</scope>
|
||||
<!-- 主JAR文件放到根目录(Spring Boot fat jar已包含所有依赖) -->
|
||||
<files>
|
||||
<file>
|
||||
<source>${project.build.directory}/${project.artifactId}.jar</source>
|
||||
<outputDirectory>/</outputDirectory>
|
||||
<destName>${project.artifactId}.jar</destName>
|
||||
<fileMode>0644</fileMode>
|
||||
</dependencySet>
|
||||
</dependencySets>
|
||||
</file>
|
||||
</files>
|
||||
</assembly>
|
||||
|
||||
@ -36,10 +36,22 @@ if [[ -z "${INSTANCE_NAME}" ]] || [[ "${INSTANCE_NAME}" == '\${APP_NAME}' ]]; th
|
||||
fi
|
||||
TENANT_ID=${TENANT_ID:-""}
|
||||
|
||||
# 4. JAR文件路径
|
||||
JAR_FILE=$(ls ${APP_HOME}/lib/*.jar 2>/dev/null | head -1)
|
||||
if [ -z "$JAR_FILE" ]; then
|
||||
echo "Error: No JAR file found in ${APP_HOME}/lib/"
|
||||
# 4. JAR文件路径(优先查找根目录的主JAR,再查找lib目录)
|
||||
# Spring Boot fat jar已包含所有依赖,主JAR在根目录
|
||||
JAR_FILE="${APP_HOME}/${APP_NAME}.jar"
|
||||
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
|
||||
fi
|
||||
|
||||
@ -85,6 +97,7 @@ echo "Starting ${INSTANCE_NAME}..."
|
||||
echo " APP_NAME: ${APP_NAME}"
|
||||
echo " INSTANCE_NAME: ${INSTANCE_NAME}"
|
||||
echo " APP_HOME: ${APP_HOME}"
|
||||
echo " JAR_FILE: ${JAR_FILE}"
|
||||
echo " LOG_HOME: ${LOG_HOME}"
|
||||
echo " JAVA_OPTS: ${JAVA_OPTS}"
|
||||
if [ -n "${TENANT_ID}" ]; then
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user