Eclipse 关闭钩子能够停止终止

2023-12-02

我正在开发一个插件。该插件执行外部工具,如果用户在进程正在运行时尝试退出 Eclipse,我必须提供一个确认对话框。有正在运行的进程。你真的想退出吗?如果用户点击No,Eclipse 可能不会终止。

我刚刚发现,如何挂钩退出命令来清理思考。 (该插件的激活器有stop()方法。)但是 Eclipse 总是会不可避免地终止。


一位同事帮我解决了这个问题。解决办法其实很简单。我所需要的只是在激活器中注册的 worgbench 监听器。侦听器有两种方法来处理关闭前和关闭后的事件。第一个返回布尔值。如果返回 true,则 Eclipse 退出。否则退出过程将被中断并且用户可以继续其工作。

在激活器类中:

public void start(BundleContext context) {
    ...
    IWorkbench iwb = PlatformUI.getWorkbench();
    WBListener wbl = new ...;
    iwb.addWorkbenchListener(wbl);
    ...
}

类的代码WBListener:

import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchListener;

public class WBListener implements IWorkbenchListener {

    @Override
    public void postShutdown(IWorkbench w) {
    }

    @Override
    public boolean preShutdown(IWorkbench w, boolean b) {
        boolean exitEclipse = ...; //get it somehow

        return exitEclipse;
    }
}

就这样。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Eclipse 关闭钩子能够停止终止 的相关文章

  • 启动失败。未找到二进制文件。 Eclipse Helios 上的 CDT

    我在 Ubuntu 10 04 上使用 Eclipse Helios 并尝试在其上安装 CDT 插件 我从这里下载here http www eclipse org downloads download php file tools cdt
  • 在 Eclipse/RCP 中定位工具栏

    我正在开发我的小型 RCP 应用程序 它需要一个自定义透视切换器来控制用户可以访问哪些视图 所以我在这里尝试添加一个带有几个按钮的工具栏来切换视角 我认为对这些内容进行一些控制的最佳方法是在 Application ActionBar Ad
  • Eclipse 中的 Scala 执行时间

    当我从 Eclipse 运行 Scala 程序时 出现了一些可疑的情况 我运行一个 App 对象 运行需要 7 8 秒 实际执行时间用对象中的 System nanoTime 计时 当我从命令行运行相同的 class 文件时 需要 2 5
  • 有没有办法从 Eclipse 访问 Stata?

    类似于StatET http www walware de goto statet允许您从 Eclipse 运行 R 代码的插件 我尝试用谷歌搜索它 但没有发现任何有用的东西 据我所知 没有一个 如果您是 CLI 迷或愿意使用 Emacs
  • 插件在 Windows 7 64 位上的 Eclipse 中不起作用

    在我全新的Windows 7机器上 我下载了Eclipse Galileo 和几个Eclipse插件 Android的ADT插件 Subclipse等 重新启动后 这些插件都没有显示在 IDE 中 首选项 菜单等中没有显示任何内容 但如果我
  • Eclipse更新后插件消失了

    已使用更新 Eclipse PDTWindow gt Check for Updates特征 重启后所有第三方插件似乎都被关闭了 从 开始 clean命令行键没有帮助 Eclipse Installation Detals正确包含有关我所有
  • 哪种函数式编程语言在 Eclipse 中提供最好的支持?

    作为一项练习 我的团队正在考虑学习函数式编程 选择一种语言的因素之一是它在 Eclipse 中的支持 任何带有 Eclipse 插件的语言都可以 但是哪种语言提供最好的免费插件呢 额外问题 该语言的最佳在线 书籍教程 我不知道它是否是最好的
  • mysema 的 Maven apt-get-plugin

    我在 pom xml 中添加了以下代码片段 但在 Eclipse 中执行部分出现错误 Plugin execution not covered by lifecycle configuration com mysema maven mave
  • 如何修补 Eclipse 插件?

    我想修复 eclipse 插件 WTP 的官方插件 中的错误 我在本地更改了源代码 对其进行了调试 一切都很好 现在我想将此更改传播到我的 Eclipse 安装 但我遇到了问题 似乎有不止一种方法可以实现这一目标 例如 这个网站 http
  • 如何使用 p2-maven-plugin 将插件和功能打包到 OSGI 包中

    我已经创建了一个插件和功能项目 用于插件 我正在使用 tycho maven 来构建它 我能够成功构建它 现在我想打包成 osgi 包 plugin jar feature jar artifacts jar content jar 为此
  • Eclipse 中的字/行计数工具

    有没有任何工具或插件可以做到这一点 CodeBlock 有这个简洁的工具 非常好 不知道它是否可以在 Eclipse 上使用 谢谢 http metrics sourceforge net http metrics sourceforge
  • 创建新的 Eclipse 插件项目时何时选择“生成激活器...”

    有很多 Eclipse RCP 教程都从明显的第一步开始 创建一个新的插件项目 看来大约 其中 70 指定检查 生成一个激活器 一个控制插件生命周期的Java类 其他人特别说不要检查该切换 替代文本http img179 imageshac
  • Findbugs 与 Google CodePro AnalytiX(Eclipse 插件)[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何在Eclipse中集成CSS预处理? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我想在 Eclipse 中编辑 SCSS 文件 最好使用语法突出显示 scss files 我发现这些资
  • Eclipse 不从目标平台下载相同版本的最新 jar

    我在 Eclipse IDE Indigo V3 7 2 中遇到一个奇怪的问题 我们使用托管在服务器上的目标平台 该服务器是使用 b3 聚合过程构建的 p2 存储库 我们从不同的团队获得某些组件和功能 每次他们提供插件时 版本号都保持不变
  • 如何从 jenkins 的现有项目生成 .hpi 插件

    我正在尝试使用 jenkins 的性能插件 但最新版本存在一些问题 如链接中所述 https issues jenkins ci org browse JENKINS 27100 https issues jenkins ci org br
  • 在 Eclipse Juno 上安装 Marketplace 插件

    我下载了Eclipse Juno 4 2 经典捆绑包 http eclipse org downloads 然后看到了Help gt Marketplace 不可用 AFAIK 这是由mpc 插件 在他们的网站上 http eclipse
  • 如何将参数传递到 eclipse-plugin 中的代码模板

    我想创建一个定义新代码模板的插件 喜欢这篇博文 http thomaswabner wordpress com 2009 08 21 use your own variable in eclipse code templates 如何将参数
  • 如何将 Eclipse Classic 升级到 Java EE?

    我想开发 HTML5 网站 我已经安装了用于Android开发的Java 我的机器上安装了 Eclipse Classic 3 6 现在我希望在同一台机器上安装 Java EE 是否可以 如果是这样 请告诉我如何将 Eclipse Clas
  • 编写自定义 Eclipse 调试器

    EDIT 一定有某种方法可以解决这个问题 而无需编写全新的调试器 我目前正在研究在现有 java 调试器之上构建的方法 如果有人对如何获取 Java 调试器已有的信息 有关堆栈帧 变量 原始数据等 有任何想法 那将非常有帮助 我想要做的是我

随机推荐

  • Java Keystore.getKey() 缓慢,同时密钥存储大小增加

    我正在使用 java 密钥存储来存储和检索加密密钥 当我的密钥存储大小很小时 它的工作速度更快 但是 一旦我的密钥存储大小增加 密钥存储操作就会变慢 我正在linux平台上工作 Java版本Jdk 1 8 和 safenet 作为提供商 我
  • 在 onPause、onStop 和 onDestroy 方法中调用超类方法的正确顺序是什么?为什么?

    我刚刚浏览了 Android 开发人员网站 刷新了 Activity 生命周期 在每个代码示例中 超类方法旁边都有一条注释 上面写着 始终首先调用超类方法 虽然这在创建半周期 onCreate onStart 和 onResume 中有意义
  • 在 WPF 应用程序中禁用 Aero Peek

    我想在我的 WPF 应用程序中禁用 Aero Peek 当用户将鼠标放在 显示桌面 按钮上时 我的应用程序必须可见 我使用这个 PInvoke 签名 Flags public enum DwmWindowAttribute uint DWM
  • React 如何有条件地覆盖 Material-UI 中的 TextField 错误颜色?

    我在用着React Material UI库 我想有条件地覆盖 TextField 的错误颜色 当错误属于某种类型时 我需要将 helperText 边框 文本和所需标记颜色更改为黄色 像这样的东西 否则 我想为所有其他类型的错误保留默认颜
  • Android 从通话记录屏幕中获取条目

    我已经能够使用从互联网上获得的以下代码访问手机的通话记录屏幕 是否可以通过单击获取单个条目的条目详细信息 例如号码 通话时间等 Intent showCallLog new Intent showCallLog setAction Inte
  • 错误:打开失败:ENOENT(没有此类文件或目录)

    我试图创建一个文件来保存相机中的图片 结果发现我无法创建该文件 但我实在找不到错误所在 你能看一下并给我一些建议吗 private File createImageFile File imageFile null String stamp
  • 下载 Google App Engine 数据库

    在 Google App Engine 数据存储区中创建表 实体 后 我创建了 Web 应用程序并将其部署在 Google App Engine 中 我怀疑是否可以下载实体 数据库 启用remote api 将其添加到您的web xml
  • 通过Java修改XPath表达式?

    我有以下类型的 XPath 表达式 id test id and some other attribute some value 我想把它转换成 resourceId android id test id and some other at
  • 如何在 Java 中将字符串时间转换为 Long 毫秒

    我正在尝试使用下面的代码将时间字符串转换为毫秒 因为我会把时间用作倒计时器 问题是时间来自数据库并且是 varchar 类型 我尝试了这段代码 但它没有给我正确的输出 String timeDuration 10 00 for exampl
  • SpreadsheetAddRows 在中等大小的查询上失败

    编辑 我更改了名称 因为有一个类似的问题如何修复添加大型查询时 SpreadSheet 添加行函数崩溃的问题 那里描述了我的问题 所以我更简洁地进行了分述 问题是我的查询结果的电子表格添加行以我认为适中的大小 1600 行 27 列 轰炸了
  • 未找到对象 - XAMPP

    我最近在我的笔记本电脑上安装了 XAMPP windows 7 64 位 我刚刚用 HTML 编写了一个非常基本的 Hello World 脚本 但是 当我尝试运行它时 它显示 未找到对象 错误 404 这就是我正在做的 写了剧本 将其保存
  • 更改 tkinter 窗口边框样式

    我想让我的窗框看起来像旧的 windows 95 风格 现在 当我创建窗口时 tkinter 会自动采用我的操作系统 Windows 10 的样式 有办法改变这个吗 不 没有什么特别可以使窗口边框看起来不同 您唯一的选择是完全删除边框 例如
  • NETLOGO:使用上一个刻度的变量

    是否有一些原语可以使用前一个刻度的变量值 我尝试计算一个代理的 价格 变量 我的意思是使用包含其他代理的 价格 变量但来自上一个刻度的公式 不 NetLogo 中没有内置方法可以执行此操作 您最好的选择可能是创建一个名为以下内 容的变量va
  • 将 ioctl() 调用从 unix 移植到 linux,FIONBIO 出错

    我想使用 ioctl 来获取准备读取的字节数 我这样做的方式是 mysocket socket ioctl mysocket FIONBIO zero connect ioctl mysocket FIONREAD numBytes rea
  • 生成 [-1, 1] 范围内的随机数数组

    我正在尝试在 Fortran 中的 2D 数组中生成 1 1 范围内的随机数 我知道为了生成 1 和 1 范围内的随机数 我必须将数字重新调整为 0 2 但我不知道如何填充矩阵x 10 10 with randomReal 这是代码 pro
  • InstallShield 限量版支持 64 位安装程序吗?

    我刚刚开始学习 InstallShield LE 因为它似乎是唯一 官方 支持的安装程序项目 但我有一个简单的问题 我什至无法得到绝对的答案 ISLE 是否支持构建 64 位安装程序 我之所以这么问 是因为我发现至少有两篇文章说这是不可能的
  • 如何将两个不同Spout的输出发送到同一个Bolt?

    我有两个 Kafka Spout 我想将它们的值发送到同一个 Bolt 是否可以 对的 这是可能的 TopologyBuilder b new TopologyBuilder b setSpout topic 1 new KafkaSpou
  • 使用 PHP 以非 ASCII 字符输出日期

    我正在尝试以繁体中文输出日期 我将日期作为 Unix 时间戳 例如 1467244800 我正在做以下事情 我得到的输出是 Unicode 未定义 字符 30 2016 17 T 2016 18 Q G 2015 谁能告诉我我做错了什么 我
  • 使用端口 443 连接到 Heroku

    我是一名大学生 除了80 443之外的所有端口都被封锁 我可以通过以下方式连接到 github Host github com Hostname ssh github com Port 443 git push heroku master给
  • Eclipse 关闭钩子能够停止终止

    我正在开发一个插件 该插件执行外部工具 如果用户在进程正在运行时尝试退出 Eclipse 我必须提供一个确认对话框 有正在运行的进程 你真的想退出吗 如果用户点击No Eclipse 可能不会终止 我刚刚发现 如何挂钩退出命令来清理思考 该