问题标签 [rcp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
10421 浏览

java - Eclipse RCP:利用配置目录

我的 Eclipse RCP 应用程序需要一个包含一些信息的配置文件才能连接到远程数据库。存储此配置文件的最佳位置在哪里?

我可以为此目的使用默认配置目录(通常存储“config.ini”的位置)吗?如果是这样,我如何以编程方式将 File 实例获取到该位置?我还注意到这个目录在我的 Eclipse IDE 中不存在。

谢谢。

0 投票
11 回答
20613 浏览

java - 使用哪个富客户端平台

我们最近开始开发 Java 桌面应用程序,管理层要求我们使用富客户端平台。我知道Java有四个:

  1. Eclipse RCP - www 链接到 ecipse rcp
  2. Netbean RCP - Netbeans RCP 网站
  3. Spring RCP -春天富客户端
  4. Valkyrie RCP - Valkyrie 富客户端

有没有人在这些方面有任何经验,如果有,每个方面的优势和劣势是什么?

谢谢

0 投票
2 回答
11101 浏览

java - 如何从 Eclipse 插件中获取包资源管理器中的选定节点

我正在编写一个 Eclipse 命令插件,并希望在包资源管理器视图中检索当前选定的节点。我希望能够从返回的结果中获取所选节点驻留在文件系统上的绝对文件路径(即 c:\eclipse\test.html)。

我该怎么做呢 ?

0 投票
2 回答
2417 浏览

java - 同时运行多个 Netbeans RCP 应用程序实例

我们有一个基于 netbeans 富客户端平台的应用程序。

默认行为是只有一个软件实例可以运行,这可以通过在启动应用程序时指定不同的用户目录作为参数来覆盖。

有没有其他选择?我们的客户依赖于能够运行应用程序的多个实例。

(如果我们不必实现我们自己的启动器来检查 netbeans 用户目录的锁以传递替代用户目录,我们会更喜欢)

netbeans RCP 中是否有内置方法可以轻松支持多个实例?

欢呼/B

0 投票
1 回答
479 浏览

java - Eclipse RCP 案例研究

我有兴趣了解 Eclipse RCP,我有一些基础知识,但我想了解更多它的能力。因此,我鼓励自己创建一组需求,分析它们,并就如何使用 Eclipse RCP 作为基础框架来满足它们提出设计决策,并最终使用 Eclipse RCP 实现它们。现在,也许要求太难了,或者我对 Eclipse RCP 还不太了解,我正在努力想出合适的解决方案来满足要求!

以下是要求的总结(请原谅可能缺乏细节,这只是一个鼓励自己的例子):

我想要一个 Eclipse RCP 应用程序来监控一些服务器。这些服务器最初将是应用程序知道的程序(意味着它确切地知道它们的来龙去脉)。然而,在未来,应用程序应该能够允许用户指定具有不同特性的任意程序以供应用程序监控(因此不仅是已知的服务器,还包括一些以前不知道的其他服务器)。该应用程序还需要一个 XML 配置文件,其中包含需要监视的服务器的所有详细信息(例如主机、端口、用户名和密码)。此 XML 配置文件将使用 JAXB 进行编码和解码。

所以基于上述要求,我想出了以下细节:

XML 将如下所示:

应用程序知道的服务器位置和位置。

在源代码中,类的层次结构如下:

组件 <--- 服务器 <--- 服务器 A、服务器 B

ServerA 和 ServerB 从 Server 下降并分别映射到和元素。

配置的点条目位于名为 Configuration 的类中,该类包含一个 ServerA 列表和一个 ServerB 列表。现在,因为应用程序应该能够监视它不知道的其他程序,所以 XML 配置文件也应该是可扩展的,所以 Configuration 类还包含一个 Object 列表,该列表映射到用户在配置文件。

配置.java

现在,你们也会这样做来解决问题吗?我想,我不知道,我只是对应用程序能够监视用户指定的其他程序的要求感到困惑。我知道我一开始就设置了它,但我这样做是因为“这看起来像是可以利用 Eclipse RCP 的扩展点的东西”,但是现在已经跳入配置文件,我不清楚应该如何配置文件与plugin.xml有关吗?

在我的脑海中,我希望配置文件能够指定应用程序需要监控的程序的详细信息(主机、端口、用户名和密码)。plugin.xml 用于指定应用程序还需要监视的用户定义程序的扩展点和扩展。那么这是否意味着,对于用户自定义的程序,最终用户需要在plugin.xml中将它们配置为扩展,然后在配置文件中指定它们的其他细节?

0 投票
3 回答
3276 浏览

obfuscation - 如何使用 ProGuard 混淆 OSGi 包?

我目前正在尝试使用 ProGuard 混淆我的 Eclipse RCP 应用程序。问题在于它混淆了包名(My.Package.Class 类变成了类似 abc),但将包名保留在 MANIFEST.MF 的 Export-Package 部分。

这导致我的应用程序(实际上是一组 OSGi 捆绑包)无法运行,因为无法解析 MANIFEST.MFs 的 Export-Package 部分中指定的包名称。

ProGuard 混淆基于 OSGi 的 RCP 应用程序是否有人成功?基本上,我看到了两个选择:要么完全关闭包名称混淆,要么混淆 MANIFEST.MF 的 Export-Package 部分,但我找不到实现其中任何一个的方法。Proguard 似乎只混淆了 MANIFEST.MF 中的 Bundle-Activator 类名,跳过了所有其他部分。提前致谢!

0 投票
3 回答
977 浏览

macos - OSX 上的 Eclipse RCP - 如何停止记录到系统日志?

我们的 RCP 应用程序记录了相当多的日志,但只有 INFO 及更高版本输出到控制台。在 windows/linux 上这没问题,但在 OSX 上,所有日志记录似乎都传递给 syslogd,然后它决定记录什么而不记录什么,这意味着处理成千上万的 FINEST 日志消息,这使得 syslogd 使用 140% cpu 和 gobble内存。运行我们的应用程序大约 3 分钟后,syslogd 使用了 2.5gb 的内存,整个系统变得无法使用。杀死 syslogd/rebooting 是唯一的治疗方法。从控制台启动应用程序使其直接登录到控制台,没有问题。

如何停止 syslogd 处理我在 OSX 上的 RCP 日志记录?

0 投票
5 回答
13367 浏览

java - eclipse RCP 中的 plugin.properties 机制

我的项目包含多个插件,每个插件都包含带有近 20 个翻译的 plugin.properties 文件。MANIFEST.MF 文件定义了存储外部插件字符串的属性文件的名称。

我定义的插件的名称

Eclipse 将在运行时在 plugin.properties 文件中搜索“%plugin.name”。

哪个类读出了 MANIFEST.MF Bundle-Localization 条目,并且在“plugin.properties”文件中搜索了带有起始“%”后缀的字符串?

我想以这种方式查找并修补这些类,我可以首先查看其他一些目录/文件中的“%plugin.name”标识符。通过这些新机制,我可以在我的产品中添加片段并覆盖“plugin.properties”文件中的单行,而无需更改原始插件。通过这些机制,我可以通过添加不同的片段来为多个客户创建一个构建过程。包括客户姓名和他们想要更改的特殊字符串的片段。

我想这样做,因为片段机制只会将文件添加到原始插件中。当插件中存在“plugin.properties”文件时,片段“plugin.properties”文件将被忽略。

更新 1:

方法

返回给定语言环境字符串的属性文件的 ResourceBundle。当有人知道我现在如何首先查看片段以获取资源路径时,请发布它。

更新 2:

ManifestLocalization 类中的方法

搜索属性文件并将其缓存。翻译可以从缓存文件中获取。问题是,完整的文件被缓存而不是单个翻译。

一种解决方案是首先读取片段文件,而不是读取捆绑文件。当两个文件都存在时,将它们合并到一个文件中并将新的属性文件写入磁盘。返回新属性文件的 URL,以便可以缓存新的属性文件。

0 投票
2 回答
2491 浏览

eclipse - Eclipse 代码中的本地化在哪里?

我在 Eclipse RCP 应用程序中有一个贡献视图。此视图具有本地化名称 %view.name,并在 plugin.properties 文件中翻译为“我的视图部件”。

我正在研究 Eclipse 的源代码以了解国际化的工作原理。到目前为止,我还没有找到属性文件中的值在什么时候被读取并分配为视图的名称。

如果我从资源读取部分开始,我看到类 ManifestLocalization 读取了属性文件,但是我找不到它的使用位置。

如果我从名称分配开始,我会看到 TableReader 类获取了视图部分的名称,但它已经本地化了。我还看到 Eclipse 在某个时候将此 plugin.xml 转换为一些序列化对象。也许它是出于性能原因而完成的?

所以我的问题是,这个“%view.name”字符串是什么时候转换成“My View Part”的

0 投票
1 回答
5084 浏览

eclipse - Eclipse RCP 应用程序 - 多显示器的多窗口设计

关于 Eclipse RCP 和整个透视图/视图/编辑器设计的问题 - 创建将在多个监视器上显示多个窗口的应用程序的最佳方法是什么?我见过的教程和书籍总是将 RCP/SWT 设计打包到单个应用程序窗口内的透视图中。

一个窗口应该统治所有其他窗口还是它们都应该相等(关闭最后一个退出应用程序)?如何处理观点和观点?还有其他我们应该知道的事情吗?

环境:Eclipse Ganymede,Windows XP。