Tag: eclipse rcp

使用tycho maven将JRE与基于RCP插件的应用程序捆绑在一起

我有基于插件模型的RCP应用程序。 我想把JRE放到由Maven + Tycho创建的最终工件上。 我试着遵循这些推荐 包括-A-JRE-IN-A-第谷建造 捆绑的JRE,沿与-您的产品 我创建了另一个function项目,其中将所需的JRE放在function项目的根目录中。 在我的情况下这个jre / win64。 我为产品定义添加了function。 但我不明白如何通知maven进程负责在我的function项目中创建有关JRE的产品分发我的构建属性文件是 bin.includes=feature.xml root.win32.win32.x86_64= ./jre/win64 我还创建了新的pom.xml并添加到父pom.xml我使用tycho 1.1.0和Eclipse Neon.3作为平台

使用`Runtime.getRuntime()。exec`从Java启动的进程无法访问文件系统位置

进程使用Runtime.getRuntime().exec从Java启动Runtime.getRuntime().exec具有较少的权限,我在JavaDocs中没有看到相关描述以及如何管理它。 如何确保启动的进程具有相同的环境和权限? 更多细节: 为maven和gradle编写轻量级Eclipse插件。 (这个问题经过测试不会与Eclipse有关,最后会看到。) 我从Eclipse插件中启动mvn和gradle : 对于gradle gralde build无法创建临时文件: Eclipse插件开发 – Gradle无法从Eclipse启动器运行:java.io.IOException:拒绝访问 对于maven D:\Progs\springsource\apache-maven-3.0.4\bin\mvn.bat -X compile exec:java -Dexec.mainClass=runclass.Runme Apache Maven 3.0.4 (r1232337; 2012-01-17 16:44:56+0800) Maven home: D:\Progs\springsource\apache-maven-3.0.4 Java version: 1.7.0_11, vendor: Oracle Corporation Java home: C:\Program Files\Java\jdk1.7.0_11\jre Default locale: zh_CN, platform encoding: GBK OS name: “windows 7”, version: “6.1”, arch: “amd64”, family: “windows” [INFO] […]

在Eclipse编辑器中检测选项卡关闭

我有一个带有自己编辑器的Eclipse RCP应用程序。 类编辑器从org.eclipse.ui.texteditor.AbstractTextEditor扩展,并在plugin.xml -> org.eclipse.ui.editors扩展中添加。 如何检测用户何时关闭文档?

如何在激活器中获取IEclipseContext

我遇到了Eclipse 4 RCP应用程序的一个问题。 我需要记录一些事件。 我需要以某种方式获得对记录器的引用。 我知道,如何使用IEclipseContext做到这IEclipseContext ,但我无处可寻,如何在没有dependency injection的情况下获取IEclipseContext ,我无法在激活器中使用。 你有谁知道,请问如何解决这个问题? 非常感谢

在SWT-Widgets上自动生成ID

有没有办法在SWT-Widgets上自动生成ID,以便UI-Tests可以引用它们? 我知道我可以使用seData手动设置id,但我想以一种通用的方式为现有应用程序实现此function。

如何刷新Eclipse View插件

我根据eclipse插件视图教程创建了一个简单的视图。 我添加了允许我的插件监听调试器更改的function。 我的问题是,每次调试器上的某些事情发生时,我都希望刷新我的视图并使用新信息进行更新。 这就是我所拥有的/正在尝试的内容: public void createPartControl(Composite parent) { listener = new DebugContextListener(this); DebugUITools.getDebugContextManager().addDebugContextListener(listener); // Check if there is an already started debug context IAdaptable dc = DebugUITools.getDebugContext(); if (dc != null) { dataCollection.add(new ProxyScope(“hi”)); // manually injecting data Object o = dc.getAdapter(IStackFrame.class); if (o instanceof IStackFrame) setStackFrame((IStackFrame) o); viewer.refresh(); // this doesn’t work } […]

Eclipse:以编程方式创建首选项页面

我正在尝试以编程方式创建首选项页面,我需要使用首选项页面而不在plugin.xml中定义preferencePage扩展点我非常接近解决方案,我能够加载页面并在第一次应用程序时保存值负载, 我的代码的核心是 PreferenceManager pmngr= PlatformUI.getWorkbench().getPreferenceManager(); //this come from other plugins that implements my personal IPreferences PreferencePageRCP page =new PreferencePageRCP((IPreferences) element.createExecutableExtension(“class”)); PreferenceNodeRCP node= new PreferenceNodeRCP(page.getId(), page.getTitle(),null,PreferencePageRCP.class.getName()); node.setPage(page); pmngr.addToRoot(node); 其中PreferencePageRCP是我的自定义首选项页面所以这一点我让我的PreferencePage工作! 但是当我再次进入首选项窗口时,我在PreferenceNode.createPage上出现错误,所以现在我做了自己的PreferenceNode类覆盖了createPage,但现在我遇到了一个UI错误 Problems occurred when invoking code from plug-in: “org.eclipse.jface”. !STACK 0 org.eclipse.swt.SWTException: Widget is disposed at org.eclipse.swt.SWT.error(SWT.java:4083) at org.eclipse.swt.SWT.error(SWT.java:3998) at org.eclipse.swt.SWT.error(SWT.java:3969) at org.eclipse.swt.widgets.Widget.error(Widget.java:468) at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:340) at org.eclipse.swt.widgets.Control.setVisible(Control.java:3370) […]

如何使简化的RCP应用程序真正独立?

这是我对新知识水平的旧问题的全面重构。 问题摘要 我的日食产品不起作用。 它需要任何附加function吗? 创建简单的RCP应用程序 此时所有向导function都被禁用,我按下Finish按钮。 因此,Eclipse仅使用MANIFEST.MF和build.properties文件创建几乎为空的项目。 现在我正在创建一个应用程序。 Application是org.eclipse.core.runtime.applications扩展点的扩展,它在org.eclipse.core.runtime插件中实现。 所以我将此插件添加为依赖项: 这将在Package Explorer创建一个名为Plug-in Dependencies新节点: 现在我在插件中添加新的扩展名: 我给我的应用程序提供了一个id myappid ,并为它分配了一个类myproject.Application 。 这将创建一个文件plugin.xml 其中包含所有这些信息。 此文件也是从build.properties引用的: source.. = src/ output.. = bin/ bin.includes = META-INF/,\ .,\ plugin.xml 同时MANIFEST.MF变为无效,因为它现在需要是单例,可以自动设置,也可以通过Overview选项卡中的复选框设置: 请注意,虽然我的应用程序ID是myappid ,但此名称不是完全限定的。 完全限定名称出现在插件ID之间的连接中,这是。 在我的例子中,它是myproject.myappid 。 现在我将(返回)清单编辑器的Extensions选项卡,并通过单击class超链接为应用程序创建类文件: 这将调用New Java class向导,最后创建java文件并在编辑器中打开它: package myproject; import org.eclipse.equinox.app.IApplication; import org.eclipse.equinox.app.IApplicationContext; public class Application implements IApplication { @Override […]

Eclipse RCP具有项目依赖性

我开发了一个RCP插件(不是独立的),以及一个带有插件需要调用的库代码的Java项目。 我已在同一工作区中配置Java项目。 该插件具有Java项目的项目依赖性。 代码编译(插件用Java Project /库代码完成一些工作)。 当我运行插件时,我得到一个ClassNotFoundException: java.lang.ClassNotFoundException: com.mycode.ArgSet at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:494) 有谁知道如何正确配置插件?

Eclipse RCP – ILazyTreeContentProvider实现意外地渴望

我正在开发一个Eclipse RCP应用程序,并且我正在尝试使用ILazyTreeContentProvider实现,以便在特定时间仅显示可见项。 代码: 在扩展ViewPart的类中: public void createPartControl(Composite parent) { viewer = new TreeViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.VIRTUAL); drillDownAdapter = new DrillDownAdapter(viewer); viewer.setContentProvider(new ViewContentProvider()); viewer.setLabelProvider(new ViewLabelProvider()); //viewer.setSorter(new NameSorter()); viewer.setInput(getViewSite()); // Create the help context id for the viewer’s control PlatformUI.getWorkbench().getHelpSystem().setHelp(viewer.getControl(), “test.provider.lazy.viewer”); makeActions(); hookContextMenu(); hookDoubleClickAction(); contributeToActionBars(); } 在ContentProvider中: @Override public void updateElement(Object parent, int […]