Mac笔记本idea打包maven工程,本地环境运行正常,打包成功,却启动不成功

简介: Mac笔记本idea打包maven工程,本地环境运行正常,打包成功,却启动不成功

记录一下:

  1. Mac笔记本使用idea打包maven工程,
  2. 本地环境运行正常,打包成功,却启动不成功;
  3. window打包成功且启动正常;
  4. 查询启动错误日志是由于zookeeper null指针的问题,但是zookeeper启动且无问题,初步怀疑是由于循环依赖的问题,但是这个问题一直排查了很久,打断点,底层源码都没有很好的答案!

但是后来发现,mac 打包后用jar解压再重新打包即可正常启动!

现在记录一下写的一个shell脚本:

#!/usr/bin/env bash
echo "===========================开始执行脚本==========================="
# dirname $0,取得当前执行的脚本文件的父目录
basepath=$(cd `dirname $0`; pwd)
# 打印当前路径
currentPath=$(pwd)
echo "当前文件夹路径: $currentPath"
# 设置变量
folder="$currentPath/tongdsp.manager-3.1.0/lib/"
tongdsp="$currentPath/tongdsp.manager-3.1.0/"
newFolder="$currentPath/tongdsp.manager-3.1.0/lib/temp/"
oldFolder="$currentPath/tongdsp.manager-3.1.0/lib/tongdsp-environment-3.1.0.jar"
# 设置权限
chmod +x run.sh
echo "++++++++++++++++ 第一步:解压tongdsp.manager-3.1.0.tar.gz +++++++++++++++"
cd $currentPath/
# 判断tongdsp.manager-3.1.0文件夹是否存在,存在则删除
if [ -d "$tongdsp" ]; then
  rm -rf "$tongdsp"
fi
tar -zxvf tongdsp.manager-3.1.0.tar.gz
rm -f tongdsp.manager-3.1.0.tar.gz
echo "++++++++++++++++ 第二步:新建temp文件夹,并复制tongdsp-environment-3.1.0.jar至temp文件夹 +++++++++++++++"
cd "$folder"
# 判断temp文件夹是否存在,不存在则创建
if [ ! -d "$newFolder" ]; then
  mkdir -p "$newFolder"
fi
# 判断tongdsp-environment-3.1.0.jar是否存在,存在则复制至temp
if [ -f "$oldFolder" ]; then
  cp -r "$oldFolder" "$newFolder"
fi
# 判断tongdsp-environment-3.1.0.jar是否存在,存在则删除
if [ -d "$oldFolder" ]; then
  rm -f "$oldFolder"
fi
echo "++++++++++++++++ 第三步:对tongdsp-environment-3.1.0.jar解压操作,并更新至temp上一层目录 +++++++++++++++"
cd "$newFolder"
jar -xvf tongdsp-environment-3.1.0.jar
rm -f tongdsp-environment-3.1.0.jar
jar -cf tongdsp-environment-3.1.0.jar ./
cp -r tongdsp-environment-3.1.0.jar ../
echo "++++++++++++++++ 第四步:重新打包tongdsp.manager-3.1.0.tar.gz +++++++++++++++"
cd ../
rm -rf "$newFolder"
cd ../../
tar -zcvf tongdsp.manager-3.1.0.tar.gz tongdsp.manager-3.1.0
if [ -d "$tongdsp" ]; then
  rm -rf "$tongdsp"
fi
echo "===========================执行脚本成功==========================="
相关文章
|
7月前
|
Java 应用服务中间件 Maven
在IntelliJ IDEA中如何配置使用Maven以创建Tomcat环境
所以,别担心这些工具看起来有些吓人,实际上这些都是为了帮助你更好的完成工作的工具,就像超市里的各种烹饪工具一样,尽管它们看起来可能很复杂,但只要你学会用,它们会为你烹饪出一道道美妙的食物。这就是学习新技能的乐趣,让我们一起享受这个过程,攀登知识的高峰!
465 27
|
7月前
|
Java 应用服务中间件 Apache
在IntelliJ IDEA中使用Maven配置Tomcat环境
此配置方法具有较高的实用性,简单易懂。遵循以上步骤,您将能顺利在IntelliJ IDEA中使用Maven配置Tomcat环境,从而进行Web项目的开发和调试。
871 18
|
10月前
|
人工智能 自然语言处理 Java
IDEA + 通义灵码 AI 程序员:快速构建 DDD 后端工程模板
本文介绍了如何利用 IntelliJ IDEA 编辑器和阿里云的通义灵码 AI 程序员,快速搭建一个基于 DDD 领域驱动架构的后端工程模板。
|
Java 应用服务中间件 Maven
Maven的三种项目打包方式——pom,jar,war的区别
Maven 提供了多种打包方式,分别适用于不同类型的项目。pom 用于父项目或聚合项目,便于项目的结构和依赖管理;jar 用于Java类库或可执行的Java应用程序;war 则专用于Java Web应用程序的部署。理解这些打包方式的用途和特点,可以帮助开发者更好地配置和管理Maven项目,确保构建和部署过程的顺利进行。无论是单模块项目还是多模块项目,选择合适的打包方式对于项目的成功至关重要。
1843 3
|
Java Maven Android开发
【Azure Developer】VS Code打包Java maven Project 遇见 BUILD FAILURE
Unknown lifecycle phase "lean". You must specify a valid lifecycle phase or a goal in the format <plugin-prefix>:<goal> or <plugin-group-id>:<plugin-artifact-id>[:<plugin-version>]:<goal>
270 5
|
缓存 IDE Java
idea的maven项目打包时没有source下的文件
【10月更文挑战第21天】idea的maven项目打包时没有source下的文件
891 1
|
Java 测试技术 Maven
maven 打包命令
maven 打包命令
194 6
|
Java Shell Maven
Flink-11 Flink Java 3分钟上手 打包Flink 提交任务至服务器执行 JobSubmit Maven打包Ja配置 maven-shade-plugin
Flink-11 Flink Java 3分钟上手 打包Flink 提交任务至服务器执行 JobSubmit Maven打包Ja配置 maven-shade-plugin
720 4
|
Java Linux Maven
IDEA如何用maven打包(界面和命令两种方式)
【10月更文挑战第14天】本文介绍了两种Maven项目打包方法:命令行与IDEA界面。首先确保已安装Maven并配置环境变量,通过`mvn -v`检查安装。命令行打包需进入项目目录,执行`mvn package`,之后在`target`目录查看结果。IDEA打包则需配置Maven路径,打开Maven Projects窗口,双击Lifecycle下的`package`阶段,同样在`target`目录查找生成文件,并在Build窗口查看日志以排查问题。
4900 1

推荐镜像

更多