Cloud foundry SAP云平台(Cloud Foundry)上的JCO问题

Cloud foundry SAP云平台(Cloud Foundry)上的JCO问题,cloud-foundry,jco,Cloud Foundry,Jco,我想在SCPCF上运行一个Sprint引导组件,该组件使用JCO连接到后端系统。我有一个使用SCP NEO的工作解决方案,但是使用SCP CF我得到一个运行时错误 最初,我使用SCP NEO堆栈上的JCO创建了一个Spring引导Java组件。这一切都很好。在第二步中,我想将组件迁移到SCP的CloudFoundry堆栈中。因此,a进行了必要的配置(目的地等),并在SCP CF堆栈上部署了该组件。我能够部署我的组件并通过Postman调用REST服务,但在内部,当我尝试连接到配置的后端目标时,我

我想在SCPCF上运行一个Sprint引导组件,该组件使用JCO连接到后端系统。我有一个使用SCP NEO的工作解决方案,但是使用SCP CF我得到一个运行时错误

最初,我使用SCP NEO堆栈上的JCO创建了一个Spring引导Java组件。这一切都很好。在第二步中,我想将组件迁移到SCP的CloudFoundry堆栈中。因此,a进行了必要的配置(目的地等),并在SCP CF堆栈上部署了该组件。我能够部署我的组件并通过Postman调用REST服务,但在内部,当我尝试连接到配置的后端目标时,我得到了一个运行时错误 “java.lang.UnsatifiedLinkError:java.library.path中没有sapjco3”当我尝试创建JCODestination时

看来JCO库还没有到位。我必须在SCP CF中明确定义JCO库吗?如果是,这是如何做到的?如前所述,在SCP NEO下,我没有得到这样的错误

public JCoDestination getJcoDestination(字符串目标,字符串jcoDestinationName){
JCoDestination JCoDestination=null;
试一试{
jcoDestination=JCoDestinationManager.getDestination(jcoDestinationName);
}捕获(JCoException e){
抛出新的RuntimeException(“无法创建/读取目标文件,target=“+target+”,
destinationName=“+jcoDestinationName,e);
}
返回jcodestation;
}
错误日志显示:

java.lang.UnsatifiedLinkError:java.library.path中没有sapjco3
位于java.lang.ClassLoader.loadLibrary(ClassLoader.java:1966)
位于java.lang.Runtime.loadLibrary0(Runtime.java:870)
位于java.lang.System.loadLibrary(System.java:1134)
在com.sap.conn.jco.rt.DefaultJCoRuntime.loadJCoLibrary(DefaultJCoRuntime.java:898)
在com.sap.conn.jco.rt.DefaultJCoRuntime.registerNativeMethods上(DefaultJCoRuntime.java:467)
位于com.sap.conn.jco.rt.JCoRuntime.registerNatives(JCoRuntime.java:1554)
位于com.sap.conn.rfc.driver.CpicDriver.(CpicDriver.java:885)
位于com.sap.conn.rfc.engine.DefaultRfcRuntime.getVersion(DefaultRfcRuntime.java:36)
位于com.sap.conn.rfc.api.RfcApi.RfcGetVersion(RfcApi.java:236)
位于com.sap.conn.jco.rt.MiddlewareJavaRfc(MiddlewareJavaRfc.java:214)
位于com.sap.conn.jco.rt.DefaultJCoRuntime.initialize(DefaultJCoRuntime.java:98)
位于com.sap.conn.jco.rt.JCoRuntimeFactory。(JCoRuntimeFactory.java:23)
位于java.lang.Class.forName0(本机方法)
在java.lang.Class.forNameFW(Class.java:362)
位于java.lang.Class.forName(Class.java:270)
com.sap.conn.jco.jco.createJCo(jco.java:52)
在com.sap.conn.jco.jco.(jco.java:26)
位于com.sap.conn.jco.JCoDestinationManager.getDestination(JCoDestinationManager.java:104)

对于SAP云平台(Neo+Cloud Foundry),您不能单独使用JCo,但必须使用已经嵌入/集成的JCo版本,该版本能够通过SAP Cloud Connector进行通信。 但是SAP Java buildpack for CF环境附带的JCo不能用于Spring引导应用程序:
请参阅列出的限制:

无法将SAP Java连接器与Spring Boot一起使用 应用程序

因此,我担心你正在努力实现的目标是不可能的。 Neo cloud平台不存在这种限制,这似乎是您没有任何问题的原因