zoukankan      html  css  js  c++  java
  • 解决Activator X for bundle Y is invalid 以及 Activator not found

    如果没有发现编译期异常(就是导航栏项目上有红叉,红感叹号),那么Activator X for bundle Y is invalid和Activator not found这两个异常通常发生在eclipse3.6以及更老的RCP版本中。

    未找到的原因是插件工程的build.properties文件下的bin.includes属性未包含“.”位置。
    我们知道,build.properties文件是构建配置,它的属性最后会被添加到classpath中,如果没有添加".",则不会从“当前位置”查找类。
    于是,要么类无法找到,要么equinox认为该bundle没有该Activator的访问权限,于是报出了之前的异常。
    解决方案如下:
     
     
     
    打开MANIFEST.MF编辑器,在Runtime签页的ClassPath位置,点击New,然后输入".",保存。
    如果,ClassPath已经有了内容,把"."移动到最上方。
     
    为什么eclipse3.7之后就没有这个问题了呢?
    不是因为eclipse不再需要"."位置了,而是该编辑器自动为你添加了这个位置。
     
     
    如果有编译期异常呢?
    你发现很多项目都有莫名的红叉或者红色感叹号,怎么处理?
    这种问题会发生在任何版本的eclipse中,它并不是BUG,而是你有某个常用的插件的ClassPath出错了。
    首先关注红色感叹号的插件,它们的问题最严重,解决方式很简单:
    1、打开MANIFEST.MF编辑器,检查Dependency和Runtime->Classpath。
    2、项目上右键->build path->Configuration build path,检查Libraries内容。
    检查不出来请复习Java基础知识。
     
    如果这样还没有解决问题。那么问题大了,你需要排查插件。
    1、随便找到一个插件,检查打开MANIFEST.MF编辑器,检查Dependencies签页内容。
    2、看看哪些红叉插件是较为通用,就是依赖层级更高,双击它,继续检查它的Dependencies
    3、如果有红叉存在,递归1操作,如果没有,解决本插件的问题。
     
     
     
  • 相关阅读:
    oracle过期备份未删除导致磁盘撑爆
    数据文件、监听日志、告警日志、redo日志、归档日志的迁移
    linux软件卸载命令
    Nginx版本平滑升级方案
    rsync 服务搭建
    在node节点部署kubectl管理k8s集群
    源码编译安装nginx及设置开机启动项
    K8S日常运维中关于“ImagePullBackOff”报错的处理思路分析
    查看所有日志命令:journalctl
    Docker编排工具Docker Compose的使用
  • 原文地址:https://www.cnblogs.com/anrainie/p/3385772.html
Copyright © 2011-2022 走看看