com.offbytwo.jenkins jenkins-client在添加springweb依赖之后报错URI does not specify a valid host name

问题:Java web项目中需要用到jenkins的API,在普通maven项目中是能够使用API的,但是在添加web项目依赖之后,报错如下:

想着应该是jenkins client依赖的包与java web的相冲突。

不知道为啥端口号后面跟着:username。

debug跳转至错误位置:

进入execute函数

 在determineTarget函数中target返回null

 

在extractHost中发现在解析端口时,这个httpClient获取port是Integer.parseInt

 我的URI端口8080后面跟着:yang,导致其解析失败。但是单独使用Jenkins Client又不报错,然后就发现导入web依赖之后,项目依赖的httpClient包版本变成了4.5.13(原先是4.3.6),其中的extractHost方法不太一样。

这个是判断host在截取IP,之后有多少位数字(len记录),再按位数截取port,这不会失败 。

解决办法:

打开file->project Structure,做下面的操作

 添加之后就不报错了。

不知道为啥Jenkins client生成的URI会在端口后面带着:username,不符合URI的格式->__->

猜你喜欢

转载自blog.csdn.net/qq_46274911/article/details/130315210