在Jenkins的可用插件列表中找不到插件

35

我已经通过将Jenkins的WAR文件部署到Tomcat来安装它。在键入

http://localhost:8080/jenkins

在浏览器中,打开了 jenkins 主页,这意味着 jenkins 已经成功安装。我配置了系统设置,给出了 jdk 和 maven 的路径并保存了它们。然后为了安装插件,我点击 Jenkins->Manage plugins 并点击 Available 选项卡,但是找不到任何插件。我尝试了三种解决方案:

  1. 通过进入 Jenkins->Manage Plugins->Advanced 来配置 Jenkins 的代理(仍未找到插件)

  2. 重新启动服务器,刷新浏览器并前往 Jenkins->Manage plugins->Available(仍未找到任何插件)。因此,我在某个地方读到如果插件没有自动更新,则需要强制更新插件。那么,就前往 Jenkins->Manage Plugins->Advanced 并单击“立即检查”选项卡(在点击 Available 选项卡时仍未找到任何插件)。

  3. 最后,我在某个地方读到,如果我们将 pluginGroup 'org.jvnet.hudson.tools' 添加到 maven 的 settings.xml 文件中,问题可能得到解决。因此,将相应的代码添加到 settings.xml 文件中:

然后我再次尝试,但仍然无法在 Available 选项卡中找到任何插件。

Jenkins->Manage plugins->Available

如果有其他能够解决这个问题的解决方案,请告诉我。

26个回答

65

前往: 管理Jenkins → 管理插件 → 高级, 然后点击右下角的检查更新。当你返回到可用选项卡时,所有插件应该都会被列出。


它可以工作,只要确保配置了Jenkins代理并在点击检出按钮之前提交。 - Tidhar Klein Orbach
那对我来说是解决方案。 :) - SiennaD.

34

它对我起作用了,谢谢。我更新了URL,然后进入可用性并点击立即检查,看起来可以工作!谢谢。 - Jithesh Chandra
谢谢,救了我的星期五晚上! - avp
截至2023年,您无需这样做,因为Jenkins本身已经包含了该功能。 - EugenSunic

27

以下内容对我有效:

进入“管理Jenkins”->“配置全局安全”

选中“使用浏览器下载元数据”的复选框

我还关闭了安全性并取消了防止跨站请求伪造的选项。


挺奇怪的,这对我也起作用了,尽管他们说这样做不被推荐。 - misha
这对我来说是解决方法。非常感谢! - Arjun Kalidas
只是工作。我正在使用jenkins-2.89.3 mac。 - Joni
你是救命恩人。奇怪的是,其他方法都对我无效。 - Rajesh Mappu
在Jenkins 2.248中找不到此选项。 - Magnus
选项已被移除:https://github.com/jenkinsci/jenkins/pull/3970 - Kris.J

23

您可以手动强制更新插件列表。

以下方法对我有效:

wget -O default.js http://updates.jenkins-ci.org/update-center.json
sed '1d;$d' default.js > default.json
curl -X POST -H "Accept: application/json" -d @default.json http://localhost:8080/updateCenter/byId/default/postBack --verbose

我创建了这个工具,以便能够批量部署Jenkins并安装插件。


谢谢。但是您能告诉我在哪里以及如何使用这段代码吗? - user2198112
在任何可以访问Jenkins的Linux系统上执行此操作,无需进行身份验证,只需将Jenkins URL 改为您自己的即可(例如localhost:8080可能是localhost:8080/jenkins)。 - rcomblen
1
在操作者的情况下,URL 将是 http://localhost:8080/jenkins/updateCenter/byId/default/postBack。 - hookenz
太棒了,这对我有用。Jenkins版本为1.590,运行在x86_64 GNU/Linux系统上。 - arunvg
这会导致我的系统在curl语句上抛出异常。javax.servlet.ServletException: org.acegisecurity.AccessDeniedException: browser-based download disabled 你有什么办法可以解决这个问题吗? - Stephen__T
我刚刚再次测试了,对我来说很好用。你是否设置了任何访问配置? - rcomblen

22

问题可能是您的浏览器代理设置未正确配置。

Jenkins无法直接从更新中心检索插件列表,它会告诉您的浏览器去检索并将其发送回Jenkins。因此,Jenkins内的HTTP代理设置在此步骤中被忽略。

因此,如果您使用的浏览器仅配置为在本地网络中工作,以连接到诸如Jenkins实例之类的本地服务器,则无法更新插件列表。

(这刚刚发生在我身上,花了一个烦人的小时才解决。)


我遇到了同样的问题。我应该如何解决这个问题? - Shruthi Sathyanarayana
最终这对我来说是正确的答案...由于某种原因,每个字段的配置都非常挑剔。我在下面发布了一个带有详细信息的答案:https://dev59.com/5mQo5IYBdhLWcg3wOtQC#39603125 - kayleeFrye_onDeck
上周末我们公司的基础设施发生了一些变化 - 因此,尽管Jenkins在“管理插件”中显示“503 for URL: http://updates.jenkins-ci.org/update-center.json”,但我可以在同一浏览器中看到该URL上的JSON。 - simon.watts
请注意,这仅在全局安全性中启用“使用浏览器进行元数据下载”时才会发生,并且仅适用于元数据,而不适用于实际软件包。 - Raúl Salinas-Monteagudo

11

这真的是令人沮丧...不是因为难度,而是由于缺乏清晰明了的文档,至少对于我所遇到的问题来说是如此。最终,我不得不以一种非常具体、挑剔的方式设置“管理插件”->“高级”->“HTTP代理配置”。如果我没有完全按照此操作,减去底部记录的最后一步,我就无法使其工作。也许是我的公司防火墙,也许是Jenkins,无论哪种情况,如果您无法成功更新代理设置,请尝试这个方法。我在菜单中使用了“验证代理”工具。下面我将简要描述信息图表的基本原理

enter image description here

  1. 在“服务器”字段中不要添加“http://”或“https://”
  2. 使用您的Jenkins凭据作为“用户名”和“密码”,而不是您的代理凭据(如果适用)
  3. 如果您正在检查Google或Yahoo等内容,请在“测试URL”中添加“http://”
  4. 提交更改
  5. 接着运行“立即检查”
  6. (可选?)从HTTP更改更新站点为HTTPS

现在,您应该能够更新您的插件了 祝好运


2
哇..谁会想到用户名是指Jenkins认证,而不是代理认证 :) 谢谢! - Adelin
2
对我来说,第六点很重要:将http更改为https,因为Chrome不会从http下载,而jenkins本身是https。 - Christian

9

点击“向上箭头” Ashish :-) - user1891758

5

当我使用nginx作为安全反向代理时,出现了这个问题。如上所建议的那样,我需要更新下载更新列表的url,只有使用https才能防止chrome中出现混合内容错误。


1
这对我没有用,尽管我正在处理相同的问题。只是提供一下信息。 - kayleeFrye_onDeck

5

我无法在 Jenkins->管理插件->可用 中找到我搜索的插件的原因是:

它已经被安装并位于 Jenkins->管理插件->已安装 中。


2
我遇到了这个问题,因为某些东西被安装为依赖项。并不总是很明显! - Alex S
2
哎呀,这也救了我...m( - Matz

4

我在遇到同样问题时发现了这个SO答案。当我点击“立即检查”强制Jenkins下载最新列表时,我的浏览器会一直卡住。直到我查看了Jenkins日志才找到了这里:

Mar 10, 2014 1:15:54 PM hudson.security.csrf.CrumbFilter doFilter
WARNING: No valid crumb was included in request for /administrativeMonitor/hudson.diagnosis.ReverseProxySetupMonitor/test.  Returning 403.

看起来问题与我将Jenkins放在反向代理后并启用了防止跨站请求伪造选项有关。一旦我禁用它,"立即检查"就可以在30秒内完成。


这个日志位于哪里/日志名称是什么? - kayleeFrye_onDeck

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接