当我尝试为Jenkins安装插件时,我看到以下错误。
Microsoft Windows [Version 6.3.9600]
(c) 2013 Microsoft Corporation. All rights reserved.
C:\Users\tech>cd C:\Program Files (x86)\Jenkins
C:\Program Files (x86)\Jenkins>java -jar jenkins-cli.jar -s http://localhost:8081/ install-plugin ant.hpi -deploy -restart
Exception in thread "main" java.io.IOException: No X-Jenkins-CLI2-Port among [null, X-Required-Permission, X-Jenkins,
X-You-Are-In-Group, X-Hudson, Content-Length, Expires, X-You-Are-Authenticated-As, X-Permission-Implied-By, Set-Cookie,
Server, X-Content-Type-Options, Date, X-Jenkins-Session, Content-Type]
at hudson.cli.CLI.getCliTcpPort(CLI.java:290)
at hudson.cli.CLI.<init>(CLI.java:133)
at hudson.cli.CLIConnectionFactory.connect(CLIConnectionFactory.java:72)
at hudson.cli.CLI._main(CLI.java:474)
at hudson.cli.CLI.main(CLI.java:389)
Suppressed: java.io.IOException: Server returned HTTP response code: 403 for URL: http://localhost:8081/cli
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at hudson.cli.FullDuplexHttpStream.<init>(FullDuplexHttpStream.java:78)
at hudson.cli.CLI.connectViaHttp(CLI.java:163)
at hudson.cli.CLI.<init>(CLI.java:137)
... 3 more
答案 0 :(得分:4)
来自CLI documentation的问题排查部分:
转到管理Jenkins&gt;配置全局安全性,并在TCP端口下为JNLP代理选择“固定”或“随机”。
默认情况下禁用CLI;您需要在Jenkins中启用此TCP端口,以便CLI客户端可以连接。
此外,假设您的Jenkins主机可以访问互联网,您只需在命令行中指定ant
插件ID即可直接从Jenkins更新中心安装Ant插件(及其依赖项!),而不是必须下载并指定每个所需的.hpi文件。
答案 1 :(得分:0)
经过一些试验和错误后,通过jenkins-cli
的别名声明使其工作alias jenkins-cli =&#39; java -jar /var/lib/jenkins/jenkins-cli.jar -auth admin:admin&#39;
在此别名之后,您可以使用以下命令:
jenkins-cli帮助 jenkins-cli who-am-i和许多其他命令(按帮助列出)
就我的情况而言,我已经为“管理员”添加了SSH密钥。 Jenkins的用户和我已将密码更改为&#39; admin&#39;