An error occurred while collecting items to be installed...解决方法

2021-03-03 15:12:54 浏览数 (1)

文章目录

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

前言

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


一、产生错误的场景

我们在安装新的内置软件时 eclipse 产生如下错误:

二、错误信息的描述

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=).
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.

2.2、错误信息的分析

我们将 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.1、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 项的值)。

五、本解决方式适用范围

  1. 安装插件报错,找不到某jar包;
  2. 安装插件报错,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 目录受到保护,因此应用程序无法自动在那里写入。

  1. 最简单的解决方案就是将Eclipse安装到用户可写的位置。例如,C:JavaEclipse。应该能够移动整个eclipse目录,没有任何注册表项或其他任何将Eclipse绑定到提取它的地方。
  2. 或者建议只下载最新的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 。

如果你在使用 Java 8u92 运行 Eclipse 时重现错误。它适用于 Java 8u112。您可以更新您的 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 人点赞