Eclipse 安装插件报错:An error occurred while collecting items to be installed session context was...解决方法汇总

2022-05-08 10:55:21 浏览数 (1)

文章目录

  • 前言
  • 一、产生错误的场景
  • 二、错误信息描述
  • 三、出错原因分析
    • 3.1、错误原因定位
    • 3.2、Eclipse 的更新管理 P2 出错
  • 四、解决方式
    • 4.1、进入 Eclipse 的安装根目录
    • 4.2、修改 Eclipse 配置文件
  • 五、本解决方式适用范围
  • 六、其他类似问题如何解决?
    • 6.1、Access is denied 访问被拒绝
      • 6.1.1、错误信息描述
      • 6.1.2、出错原因分析
      • 6.1.3、解决方式
    • 6.2、新的 Sourceforge SSL 证书和旧 JRE 安装中缺少根证书
      • 6.2.1、错误信息描述
      • 6.2.2、出错原因分析
      • 6.2.3、解决方式
  • 总结

前言

Eclipse 为我们在开发中必不可缺的 IDE,熟悉 Eclipse 的开发与应用可以让我们在项目中事半功倍。但是如果我们在使用过程中,比如使用 Eclipse 安装内置插件时,或者是插件更新时报错,我们该如何解决呢?本文就 Eclipse 的此类报错做了汇总。

一、产生错误的场景

我们在 Eclipse 中安装新的内置插件时产生如下错误,具体如下图所示:

二、错误信息描述

错误信息的详情如下:

代码语言:javascript复制
An error occurred while collecting items to be installed
 session context was:(profile=epp.package.jee, phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, action=).
HTTP Server 'Internal Error': http://updates-cdn.genuitec.com/devstyle/updates/ds20190916a/plugins/com.genuitec.eclipse.theming.epl_1.11.0.201909171704.jar
HttpComponents connection error response code 500.

三、出错原因分析

3.1、错误原因定位

我们将 Eclipse 的报错信息进行翻译,分析如下:

收集要安装的项目会话上下文时发生错误: (profile = epp.package.jee,phase = org.eclipse.equinox.internal.p2.engine.phases.Collect,operand =,action =)。HTTP服务器’内部错误’:http ://updates-cdn.genuitec.com/devstyle/updates/ds20190916a/plugins/com.genuitec.eclipse.theming.epl_1.11.0.201909171704.jar HttpComponents连接错误响应代码500。

现在呢我们就得知——Eclipse 的更新管理 P2 出错了

3.2、Eclipse 的更新管理 P2 出错

P2 有一个垃圾回收机制,之前删除的 Jar 包在未被回收之前,再次重装,系统不会做重新 download 的动作,但是它又找不到那个 Jar 包了,故而报错。

四、解决方式

4.1、进入 Eclipse 的安装根目录

在运行命令行中切换到 Eclipse 的安装根目录,即 eclipse.exe 所在目录,以我的安装目录执行命令如下:

代码语言:javascript复制
cd bailueclipse-jee-2019-09-R-win32-x86_64eclipse

具体如下图所示:

4.2、修改 Eclipse 配置文件

执行命令修改配置文件信息,输入如下命令:

代码语言:javascript复制
eclipse -application org.eclipse.equinox.p2.garbagecollector.application -profile 0000 

说明:(0000 是 configuration/concfig.ini 里 eclipse.p2.profile 项的值)。

五、本解决方式适用范围

  • 安装插件报错,找不到某 Jar 包。
  • 安装插件报错,报错信息:An error occurred while collecting items to be installed session context was:(profile=epp.package.je…。

六、其他类似问题如何解决?

6.1、Access is denied 访问被拒绝

6.1.1、错误信息描述

代码语言:javascript复制
An error occurred while collecting items to be installed
session context was:(profile=epp.package.java, phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, action=).
Unable to write to repository: file:/C:/Program Files/eclipse/.
C:Program Fileseclipsepluginsorg.jboss.netty_3.2.4.Final-201112281337.jar (Access is denied)

6.1.2、出错原因分析

在 Windows 7上,Program Files 目录受到保护,因此应用程序无法自动在那里写入。

6.1.3、解决方式

  • 最简单的解决方案就是将 Eclipse 安装到用户可写的位置。例如,C:JavaEclipse。应该能够移动整个 Eclipse 目录,没有任何注册表项或其他任何将 Eclipse 绑定到提取它的地方。
  • 或者建议只下载最新的 Eclipse,将其安装到一个新的位置(不要将它安装在现有的 Eclipse 之上),并将其指向现有的工作区。

6.2、新的 Sourceforge SSL 证书和旧 JRE 安装中缺少根证书

6.2.1、错误信息描述

代码语言:javascript复制
An error occurred while collecting items to be installed
session context was:(profile=epp.package.jee, phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, action=).
Unable to read repository at http://sourceforge.net/projects/jautodoc/files/updatesite/1.14.0/net.sf.jautodoc_1.14.0.jar/download.
sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
Unable to read repository at http://sourceforge.net/projects/jautodoc/files/updatesite/1.14.0/net.sf.jautodoc.velocity_1.14.0.jar/download.
sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

6.2.2、出错原因分析

这是新的 Sourceforge SSL 证书和旧 JRE 安装中缺少根证书的问题。 有关详细信息,请参阅 http://magicmonster.com/kb/prg/java/ssl/pkix_path_building_failed.html 。

6.2.3、解决方式

如果你在使用 Java 8u92 运行 Eclipse 时重现错误。您可以更新您的 JRE 或从 8u112 下载并解压缩此密钥库并更新您的“eclipse.ini”,如下所示:

代码语言:javascript复制
-vmargs 
-Djavax.net.ssl.trustStore = <你的路径>  cacerts 
-Djavax.net.ssl.trustStorePassword = changeit

关闭 Eclipse 并从 Eclipse 中的 features 文件夹中删除以下文件夹(如果存在):

  • net.sf.jautodoc.feature_1.14.0

以及 Eclipse 中 plugins 文件夹中的以下任何文件,如果它们存在(有些在安装失败期间安装):

  • net.sf.jautodoc_1.14.0.jar
  • net.sf.jautodoc.velocity_1.14.0.jar

现在重新启动 Eclipse 并验证 JAutoDoc 肯定不存在,然后再次关闭 Eclipse。

现在将上面命名的文件从下载的存档中复制回 plugins / features 文件夹,然后再次启动 Eclipse。JAutoDoc 现在应该再次出现在那里,问题即可解决。

总结

本文给大家总结了如何解决 Eclipse 安装新插件报错的问题。首先是我们最常见到的 p2 更新出错,其次是由于我们应用安装位置不正确导致的访问权限不够的问题,最后是新旧证书缺失文件的问题。以至于随着不断的版本更新可能某些错误会被进一步修复,还有什么其他的问题和报错产生的话也欢迎大家随时补充。

0 人点赞