当前位置: 首页 > 知识库问答 >
问题:

为什么这个Eclipse RCP插件缺少一个视图?

艾和通
2023-03-14

我正在试验Eclipse RCP应用程序处理插件的方式。在Eclipse IDE中,我创建了一个Eclipse RCP3.x项目,该项目的视图生成了所有必要的文件,并且运行良好。

假设我可以通过删除plugin.xml文件的各个部分来将这个应用程序转换成一个只保存空透视图的应用程序,我注释掉了处理视图的所有行,如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
   <extension
     id="application"
     point="org.eclipse.core.runtime.applications">
       <application>
         <run
           class="pluginwithview.Application">
         </run>
       </application>
    </extension>
    <extension
     point="org.eclipse.ui.perspectives">
       <perspective
        name="Perspective"
        class="pluginwithview.Perspective"
        id="PluginWithView.perspective">
       </perspective>
    </extension>
    <!-- 
       even without these lines 
       there's an Exception thrown saying:
       "Could not create the view: PluginWithView.view
    -->  
    <!-- <extension
          point="org.eclipse.ui.views">
          <view
            name="View"
            inject="true"
            class="pluginwithview.View"
            id="PluginWithView.view">
          </view>
         </extension>
         <extension
           point="org.eclipse.ui.perspectiveExtensions">
           <perspectiveExtension
              targetID="*">
           <view
              standalone="true"
              minimized="false"
              relative="org.eclipse.ui.editorss"
              relationship="left"
              id="PluginWithView.view">
           </view>
         </perspectiveExtension>
      </extension> -->
   <extension
     point="org.eclipse.ui.menus">
     <menuContribution
        locationURI="menu:org.eclipse.ui.main.menu">
     <menu
           label="File">
           <command
              commandId="org.eclipse.ui.file.exit"
              label="Exit">
           </command>
     </menu>
     </menuContribution>
   </extension>
</plugin>

但该应用程序不再显示空的透视图,而是如下所示:

共有1个答案

燕璞
2023-03-14

透视图记住它们所包含的视图。如果更改透视图定义,则必须进行透视图重置('窗口>perspective>reset perspective')以使其读取更新的定义。

为了进行测试,您还可以在RCP运行配置的“Program Arguments”部分中指定-clean-ClearpersistedState选项,以丢弃所有保存的信息。

 类似资料:
  • 问题内容: 嗨,我是Android编程的新手,我想问的问题可能很简单,但是我对如何使其工作一无所知,请多多包涵。 我从Android开发人员网站安装了android-sdk和相关工具。我按照他们的指示创建了HelloWorld应用,但出现了一些我不理解的错误。 文件MainActivity.java是一个自动生成的文件,在以下位置,我不断出现此文件错误: 因此,我尝试浏览生成的class文件中的l

  • 今天当我重新浏览Veracode的时候重新打开了一系列的线路比如... 为什么被认为是“网页中与脚本相关的HTML标记的不正确中和(基本XSS”缺陷)?以及为什么今天突然出现,以前从未在任何其他扫描中出现过。 这似乎对我来说很好,或者如果不是,如何修复/mitagate?

  • 我有一个使用Kafka Streams中的KTable的单实例java应用程序。直到最近,当一些消息突然消失时,我才可以使用KTable检索所有数据。那里应该有~33k条带有唯一密钥的消息。 当我想通过键检索消息时,我不会得到一些消息。我使用ReadOnlyKeyValueStore检索邮件: 这些是我为KafkaStreams设置的配置设置。 Kafka:0.10.2.0-cp1 合流:3.2.

  • 我遵循这个教程: https://www.w3schools.com/php/php_xml_dom.asp 循环遍历XML部分是有问题的。出于某种原因,PHP将DOM对象视为数组。此外,var_dump除了长度之外,不返回任何关于对象属性的信息,但程序输出看起来像是不知从何而来。foreach可以通过某种方式循环对象吗?如果有,这些属性(节点名和节点值)包含在哪里,因为var_dump没有显示它

  • 对于和的未处理插件异常,我收到一个错误: 未处理的异常:MissingPluginException(在channel plugins.flatter.io/shared_首选项上找不到方法getAll的实现)未处理的异常:MissingPluginException(在channel plugins.flatter.io/path_provider上找不到方法getApplicationSupp

  • 此组件渲染两次并抛出错误。我知道这个错误是因为它们在reduce函数中没有返回语句。但我不明白的是,为什么它会渲染两次? 此外,当我删除代码时,它只呈现一次。据我所知,一个组件只能在四种情况下重新渲染 状态的变化 道具的变化 强制渲染 父母重新渲染。 在我的例子中,父组件没有重新渲染(我通过在父组件中使用console.log检查了它),并且这个组件是无状态的,没有道具被传递给它。有人能解释一下这