网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

springboot项目接入sap与部署到docker遇到的问题有哪些

本篇文章为大家展示了springboot项目接入sap与部署到docker遇到的问题有哪些,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

成都创新互联专注于企业成都全网营销推广、网站重做改版、靖远网站定制设计、自适应品牌网站建设、H5场景定制商城网站定制开发、集团公司官网建设、外贸营销网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为靖远等各大城市提供网站开发制作服务。

前言

主要记录在协助部署接入sap遇到的问题,且只记录解决问题的答案,不说明原理。

问题实录

1、问题一:Illegal JCo archive "sapjco-1.0.jar". It is not allowed to rename or repackage the original archive "sapjco3.jar"

解决方案一:手动项目中将sapjco-1.0.jar重名为sapjco3.jar

不过我们没采用这种方案

解决方案二:指定maven的scope为system,形如下

 
            com.sap
            sapjco
            ${sap.version}
            system
            ${project.basedir}/lib/sapjco3.jar
        

然后指定resources,形如下


        
            
                org.springframework.boot
                spring-boot-maven-plugin
                ${spring-boot.version}
                
                    
                        
                            repackage
                        
                    
                
            
            
                maven-compiler-plugin
                
                    1.8
                    1.8
                    UTF-8
                    
                        ${project.basedir}/lib
                    
                
            

        

        
            
                ${project.basedir}/lib
                BOOT-INF/lib/
                
                    **/*.jar
                
            
            
                ${project.basedir}/lib
                BOOT-INF
                
                    **/*.so
                    **/*.dll
                
            
            
                src/main/resources
                
                
                    **/*.yml
                    **/*.xml
                
            
        
    

这个的作用是将sapjco3.jar打进BOOT-INF/lib/

问题二:java.lang.UnsatisfiedLinkError: no sapjco3 in java.library.path

因为项目是部署到docker里面去,因此本文只写基于docker的解决方案

解决方案如下:

在dockerFile里面指定LD_LIBRARY_PATH环境变量,形如下

FROM adoptopenjdk/openjdk8
VOLUME /tmp
#ENV JAVA_OPTS="-Dcom.sun.management.jmxremote.port=39083 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
ENV JAVA_OPTS=""
ENV LD_LIBRARY_PATH /usr/local/lib:$LD_LIBRARY_PATH
COPY localtime /etc/localtime
RUN echo "Asia/Shanghai" > /etc/timezone
COPY hello-biz/target/hello-biz-*.jar app.jar
COPY hello-biz/lib/libsapjco3.so /usr/local/lib/libsapjco3.so
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]

上述内容就是springboot项目接入sap与部署到docker遇到的问题有哪些,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。


网站名称:springboot项目接入sap与部署到docker遇到的问题有哪些
新闻来源:http://bjjierui.cn/article/jichpi.html

其他资讯