java - 如何将 java 组件集成到 Eclipse 作业中(带进度监控)?

标签 java eclipse

我正在开发一个 java 组件,它需要在命令行和 Eclipse 作业中运行。执行可能需要几分钟,所以我想通知用户发生了什么。我不想在我的“纯”Java 代码中依赖于 Eclipse 进度监视器包。

如何在 Eclipse 作业中提供进度监控而不用 Eclipse 依赖项“污染”我的 Java 代码?

最佳答案

编写您自己的在代码中使用的进度监控界面,例如:

interface MyProgressMonitor
{
  public void beginTask(String name, int totalWork);

  public void done();

  public boolean isCanceled();

  public void worked(int work);
}

对于 Java 应用程序,您可以使用它的一个不执行任何操作的实现。

对于 Eclipse 作业,使用委托(delegate)给 Eclipse IProgressMonitor 的实现:

class EclipseMyProgressMonitor implements MyProgressMonitor
{
  private final IProgressMonitor monitor;

  EclipseMyProgressMonitor(IProgressMonitor theMonitor)
  {
    monitor = theMonitor;
  }

  public void beginTask(String name, int totalWork)
  {
    monitor.beginTask(name, totalWork);
  }

  public void done()
  {
    monitor.done();
  }

  public boolean isCanceled()
  {
    return monitor.isCanceled();
  }

  public void worked(int work)
  {
    monitor.worked(work);
  }
}

关于java - 如何将 java 组件集成到 Eclipse 作业中(带进度监控)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25842014/

相关文章:

java - 在 Rational (Eclipse) 中,项目名称后的 CVS 版本和 CVS url

java - Eclipse JDT Core - 解析参数化 super 方法的通用返回类型

java - 我的插件依赖项中的plugin.xml 文件何时加载?

java - 如何使用 Spring Boot 将 Groovy 类与 Java 类一起运行

android - 为什么 android.R.menu_search 给我一个错误?

java - 如何替换 Maven 依赖项的类?

java - CYK算法实现java

java - 用于商业 Web 应用程序的 XMPP Web 客户端

java - 如何在 java 中使用 .pem 文件证书发布数据

java - 在ubuntu上配置eclipse以使用我的jdk版本