独立帮助

如果正在创建并非基于 Eclipse 框架的应用程序,仍可使用 Eclipse 帮助系统。应用程序可以打包和安装独立帮助系统,它是一个非常小的 Eclipse 版本,包括除帮助系统之外的所有内容。然后,应用程序可从它的“帮助”菜单或 UI 对象进行 API 调用以启动帮助浏览器。独立帮助系统具有集成帮助系统中除工作台集成上下文帮助、“帮助”视图和活动帮助以外的所有功能部件。当应用程序不是基于 Java 的,或者应用程序未运行时需要帮助,则可能要从系统 shell、shell 脚本或桌面快捷方式使用独立的帮助,并提供命令行选项而不是调用 Java API。

帮助独立系统允许传递可用来定制帮助系统的各个方面的许多选项。支持下列选项:

安装/打包

这些步骤旨在供帮助系统集成者使用,它们并不适用于所有可能的情况。我们假定所有文档都是作为 Eclipse 插件交付的,并且您大体熟悉 Eclipse 帮助系统。
  1. eclipse.org 下载“Eclipse 平台运行时二进制文件”驱动程序。
  2. 将该驱动程序安装(解压缩)到应用程序目录(例如 d:\myApp)中。这将创建一个 Eclipse 子目录(d:\myApp\eclipse),该子目录包含 Eclipse 平台(包括帮助系统)所必需的代码。

如何从 Java 中调用帮助类

  1. 确保 d:\myApp\eclipse\plugins\org.eclipse.help.base_[version].jar 在类路径中, 其中 [version] 是所使用的插件的版本(例如 org.eclipse.help.base_3.2.0.jar)。用来启动和关闭帮助系统的类是 org.eclipse.help.standalone.Help
  2. 创建一个 String 对象数组并使其包含要传递至帮助系统支持的选项。通常,需要 eclipsehome 选项。
    String[] options = new String[] { "-eclipsehome", "d:\\myApp\\eclipse" };
  3. 在应用程序中,通过传递这些选项来创建 Help 类的实例。此对象应保留到应用程序结束为止。
    Help helpSystem = new Help(options);
  4. 要启动帮助系统:
    helpSystem.start(); 
  5. 要调用帮助(在必要时):
    helpSystem.displayHelp(); 

    还可以调用有关特定主要 TOC 文件或主题的帮助:

    helpSystem.displayHelp("/com.mycompany.mytool.doc/toc.xml");
    helpSystem.displayHelp("/com.mycompany.mytool.doc/tasks/task1.htm");
  6. 要启动上下文相关帮助,可调用 helpSystem.displayContext(contextId, x, y),其中 contextId 是标准上下文标识。当前不使用屏幕坐标 x 和 y。
  7. 在应用程序结束时,要关闭帮助系统:

    helpSystem.shutdown(); 

如何从命令行调用帮助

org.eclipse.help.standalone.Help 类有一个 main 方法,您可以使用该方法来从命令行启动独立帮助。命令行参数的语法为:

-command start | shutdown | (displayHelp [href]) [-eclipsehome eclipseInstallPath] [-data instanceArea] [-host helpServerHost] [-port helpServerPort] [-dir rtl] [platform options] [-vmargs JavaVMarguments]

显示帮助的一种简单方法是从 d:\myApp\eclipse 目录中调用以下命令:

java -classpath d:\myApp\eclipse\plugins\org.eclipse.help.base_[version].jar org.eclipse.help.standalone.Help -command displayHelp

其中 version 是插件的版本。要显示特定 TOC 文件或主题,请使用

java -classpath d:\myApp\eclipse\plugins\org.eclipse.help.base_[version].jar org.eclipse.help.standalone.Help -command displayHelp /com.mycompany.mytool.doc/tasks/task1.htm

用于显示帮助的上面两个调用将导致帮助系统启动、显示帮助并保持运行以允许用户在执行命令之后继续浏览帮助。要控制帮助系统的生命周期,除了 displayHelp 命令之外,还可使用 start 和 shutdown 命令。例如,可调用

java -classpath d:\myApp\eclipse\plugins\org.eclipse.help.base_[version].jar org.eclipse.help.standalone.Help -command start

[可选] 安装最小独立帮助系统

独立帮助系统不需要整个“Eclipse 平台”包。可以在将下列插件添加到 eclipse/plugins 目录的情况下使用 RCP 运行时二进制文件来运行独立帮助系统:

org.apache.lucene
org.eclipse.help
org.eclipse.help.appserver
org.eclipse.help.base
org.eclipse.help.ui
org.eclipse.help.webapp
org.eclipse.tomcat
org.eclipse.ui.forms

注意:必须确保 eclipse/configuration/config.ini 文件包含下面这一行:

osgi.bundles=org.eclipse.equinox.common@2:start, org.eclipse.update.configurator@3:start, org.eclipse.core.runtime@start

某些文档插件可能依赖于其他插件,这通常是通过在它们的清单中指定必需的插件实现的。还需要安装所依赖的插件。此外,为 Eclipse V3.0 以前的版本设计的插件以隐式方式要求有 org.eclipse.core.runtime.compatibility 插件才能正常工作。

要了解有关定制帮助系统的更多信息,请参阅产品定制