It is not allowed to rename or repackage the original archive “sapjco3.jar“
一、解决SpringBoot项目使用sapjco依赖jar包的冲突问题
1.1 背景
SpringBoot与sapjco.jar的冲突问题。
It is not allowed to rename or repackage the original archive “sapjco3.jar”
但实际上这个sapjco的问题是可以被解决的。
1.2 解决方法
在IntelliJ IDEA中使用package工具打包SpringBoot项目为jar包
使用解压工具打开该jar包,进入BOOT-INF/lib文件夹,将sapjco3-3.0.12.jar手动重命名为sapjco3.jar
把jar包通过XShell传至Linux服务器上,使用java -jar xxx.jar命令运行,便可正常启动SpringBoot项目。
而且不会再出现下述BUG了:
It is not allowed to rename or repackage the original archive “sapjco3.jar”
但新的BUG将会出现,接着往下阅读。
二、解决Linux中的java库中没有sapjco的问题
2.1 背景
使用Postman调用访问SAP的HTTP接口时,后端返回以下错误:
java.lang.UnsatisfiedLinkError: no sapjco3 in java.library.path
错误提示当前系统的java类库路径中没有sapjco3,所以需要为系统加上sapjco3。
2.2 解决方法
2.2.1 修改环境变量
linux下查看jdk安装路径
执行此步骤之前请确保当前系统已经装好JDK,并配好JDK的环境变量。
编辑环境变量
vim /etc/profile
将最后部分export(用户设置或显示环境变量)部分修改为如下所示(根据自己JDK的实际安装目录修改):
export JAVA_HOME=/usr/java/jdk1.8.0_191-amd64
export CLASSPATH=$JAVA_HOME/lib
export JRE_HOME=$JAVA_HOME/jre
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export LD_LIBRARY_PATH=dir:$LD_LIBRARY_PATH:$JAVA_HOME/jre/lib/amd64/server
LD_LIBRARY_PATH是Linux环境变量名,该环境变量主要用于指定查找共享库(动态链接库)时除了默认路径之外的其他路径。
2.2.2 上传sapjco.jar和libsapjco.so至环境变量中的配置路径
根据环境变量中的配置路径提示,将libsapjco3.so上传至$JAVA_HOME/jre/lib/amd64/server文件夹下,将sapjco3.jar上传至$JAVA_HOME/lib下
注意,执行完上述两个步骤后,需要执行:
source /etc/profile
使得新的环境变量生效。
文章转自
It is not allowed to rename or repackage the original archive “sapjco3.jar“相关推荐
- Java集成Sap/Erp产生的sapjco包重命名/rename问题及解决方案
背景 公司要从erp拿数, 所以集成一下sapjco3进行连接. 初次集成在本地是没有问题的, 但是打包之后运行会出现 Caused by: java.lang.ExceptionInInitiali ...
- Springboot整合SAPJCO采坑
Springboot整合SAPJCO 环境配置 包管理 创建连接 代码调用 开发踩坑 部署采坑 环境配置 参考: https://blog.csdn.net/tuohuang0303/article/ ...
- vista下安装delphi7
本文整理自http://www.myispace.cn/clips/42270fae94e64fe6b92e2c6dca0fa301.htm 安装: Vista下安装delphi7,出现了错误提示&q ...
- 服务器使用——解压常见文件tar、zip、rar等
服务器使用--解压常见文件tar.zip.rar等 一.解压文件 1.tar文件 tar -cf all.tar *.jpg # 这条命令是将所有.jpg的文件打成一个名为all.tar的包.-c是表 ...
- 如何在linux下解压缩rar格式的文件压缩包
前言:没有特殊原因,文档如果要传到linux上,一定要打成*.zip格式, 这样方便解压,一般来说没有理由要用rar.关于 linux上unzip命令有空细讲, 本节讲下,如何让linux支持解压缩r ...
- 提取Jar2Exe源代码,JavaAgent监控法
链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载. 最近遇见一个麻烦,明明知道是java写的小软件,但是打包成了exe,木得办法,之前打包的都有缓存能在TEMP文件夹找到. ...
- 彻底透析SpringBoot jar可执行原理
点击上方"方志朋",选择"设为星标" 做积极的人,而不是积极废人 作者:plz叫我红领巾 juejin.im/post/5d2d6812e51d45777b1a ...
- SpringBoot面试题(持续整理中……)
Spring Boot 是微服务中最好的 Java 框架.为了更好的理解与使用SpringBoot,同时,为了记录平时的点点滴滴,便于日后的面试! 1.什么是SpringBoot? 用来简化Sprin ...
- security面试_精选41 道 Spring Boot 面试题,附答案!
今天跟大家分享下SpringBoot 常见面试题的知识. 1 什么是springboot ? 用来简化spring应用的初始搭建以及开发过程 使用特定的方式来进行配置(properties或yml文件 ...
最新文章
- 中国发展研究基金会联合百度发布智能经济白皮书:新基建是助燃剂,其势已成...
- [系统安全] 四十四.APT系列(9)Metasploit技术之基础用法万字详解及防御机理
- 主存和cache每一块相等_笔记:cpu中的cache(一)
- 一个XML转换的例子
- java中asl_带你认识绕不开的ASLR
- Pocket Gem OA: Path Finder
- 精通Server 2008多元密码策略之PowerShell篇
- 477. 汉明距离总和
- 解压版(绿色版)Tomcat配置
- node2vec 图向量
- 激活navicat提示rsa public key not find的问题
- 变色龙引导安装mac
- 线性表的链式存储结构——链表及其操作(创建,查找,插入,输出,删除)
- C#简单实现摄影测量后方交会
- Flutter 布局报错The following assertion was thrown during performLayout():
- 使用TeamViewer远程连接Android手机并控制
- 谷歌浏览器提示“喔唷,崩溃啦!”
- 快手 网络安全工程师 二面总结(归档,凉经)
- LeetCode-求一个集合的子集
- Word 模板渲染引擎-Poi-tl - 标签(二)