简体   繁体   English

Jenkins安装失败-错误“不可解析的导入POM”

[英]Jenkins setup fails - Error “Non-resolvable import POM”

I am trying to setup a Continuous Delivery pipeline using Jenkins for the address-manager application built using Java and S4/HANA Extension SDK. 我正在尝试使用Jenkins为使用Java和S4 / HANA扩展SDK构建的地址管理器应用程序设置一个持续交付管道。

I have followed the instruction and tried to implement along the lines of Week 3 - Unit 2 material of this course . 我已按照说明进行操作,并尝试按照本课程第3周-第2单元的材料实施。 But upon starting Jenkins and starting the app for pipeline build on localhost, I see that the job which I schedule as a multi branch fails. 但是在启动Jenkins并启动用于在localhost上进行管道构建的应用程序时,我看到我计划为多分支的作业失败了。

I have checked the logs of the same and can see that it has failed because of this error: 我已经检查了相同的日志,并且可以看到由于此错误而失败:

`[ERROR] [ERROR] Some problems were encountered while processing
the POMs: 16:51:13  [ERROR] Non-resolvable import POM: Could not 
find artifact com.sap.cloud.s4hana:sdk-bom:pom:2.8.1 in s4sdk-mirror 
(http://s4sdk-nexus:8081/repository/mvn-proxy/) @ line 16, column   
25`

Request any help or pointers to proceed, so that I am able to deploy it successfully. 请求任何帮助或指示以继续进行操作,以便我能够成功地部署它。 Many thanks. 非常感谢。

I suspect that Docker has not enough memory. 我怀疑Docker没有足够的内存。 As mentioned in the video, at least 4 GB is required, even for simple projects. 如视频中所述,即使对于简单项目,也至少需要4 GB。 To verify, you can run docker ps . 为了验证,您可以运行docker ps It should list at least two containers, one is called s4sdk-jenkins-master and one s4sdk-nexus . 它应该至少列出两个容器,一个容器称为s4sdk-jenkins-master ,一个容器称为s4sdk-nexus It looks like the nexus container was killed because Docker did not have enough memory. 似乎nexus容器被杀死是因为Docker没有足够的内存。

To fix this, please go into the Docker settings, and provide 4 GB of memory, re-start Docker and repeat what you did. 要解决此问题,请进入Docker设置,并提供4 GB内存,然后重新启动Docker并重复您的操作。

In case it is not possible to provide 4 GB memory due to what your system has in total, the (worse) alternative is to disable the download cache. 如果由于系统的总容量而无法提供4 GB的内存,(更糟糕的)选择是禁用下载缓存。 This is possible via the server.cfg configuration file, but not recommended. 这可以通过server.cfg配置文件来实现,但不建议这样做。 The effect of this setting is that the nexus container is not started, but each new build of your project re-downloads the dependencies from the internet. 此设置的作用是未启动关系容器,但是项目的每个新版本都从Internet重新下载依赖项。

For more information, please refer to this operations guide for Cx Server https://github.com/SAP/cloud-s4-sdk-pipeline/blob/master/doc/operations/operations-guide.md 有关更多信息,请参阅此Cx Server操作指南https://github.com/SAP/cloud-s4-sdk-pipeline/blob/master/doc/operations/operations-guide.md

Best regards 最好的祝福

Florian 弗洛里安

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM