【原】maven docker 插件 org.apache.http.client.ClientProtocolException: Cannot retry request with a non-repeatable request entity: Broken pipe -> [Help 1]

问题描述截图

【原】maven docker 插件 org.apache.http.client.ClientProtocolException: Cannot retry request with a non-repeatable request entity: Broken pipe -> [Help 1]_第1张图片
1523715221292.jpg

原因

由于docker maven 插件的限制,docker项目的artifactId不能包含有大写字母

解决办法

将maven项目的artifactId改成纯小写(可包含字母和下划线的形式)。


【原】maven docker 插件 org.apache.http.client.ClientProtocolException: Cannot retry request with a non-repeatable request entity: Broken pipe -> [Help 1]_第2张图片
1523718227202.jpg

问题排查过程、解决过程

心得与反思

1.对于问题搜索,一般来说百度或者谷歌的第一页结果的前5-10条比较具有价值,一旦解决不了问题那么应该多尝试其他关键词的搜索。
2.java控制台输出的异常堆栈中,最后一个Caused by比较具有价值,应该优先拿来搜索。
2.对于这种git上开源的东西,应该先去github的lssues模块下去进行搜索与大概标题的查看,很容易得到一些启发。
3.在问题不知道如何下手的情况下,即使是英文文档也应该静下心来去好好看,至少去把github上的一些说明性的文档看完。
4.在解决该问题的时候开始我我的搜索重在搜索本文标题提示的bug信息上,反而并没有在该搜索下解决该问题,百度和谷歌的第一页没解决,但是我却依然看了十几篇的搜索结果,最终是搜索 docker-maven-plugin java.io.IOException: Broken pipe 解决了问题。
5.英语真心提高!!!

彩蛋

在博主进行博客编写的时候,由于要回归复现问题新建了一个项目,新建的过程中故意把artifactId包含了大写,这才发现,新建项目的时候artifactId带有大写字母是无法创建成功的,而我是由于公司采用了多语言做微服务开发,团队定义每种语言”开发语言大写-项目名"的方式命名,所以后来手动把maven的artifactId改成了JAVA_xxx的形式,而我在改动artifactId的时候还没有进行docker plugins pull的操作,所以出了该问题。

【原】maven docker 插件 org.apache.http.client.ClientProtocolException: Cannot retry request with a non-repeatable request entity: Broken pipe -> [Help 1]_第3张图片
WechatIMG101.jpeg

你可能感兴趣的:(【原】maven docker 插件 org.apache.http.client.ClientProtocolException: Cannot retry request with a non-repeatable request entity: Broken pipe -> [Help 1])