Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » IMP » Update site with IMP-based plugin
Update site with IMP-based plugin [message #577718] Fri, 26 March 2010 10:26
Thomas Jespersen is currently offline Thomas JespersenFriend
Messages: 6
Registered: February 2010
Junior Member
Hi,

I'm not sure this is the right place to ask, but here goes: I'm creating an Eclipse plugin for a language called gbeta, and it's working quite well with IMP. So far I have a working plugin for the language that provides syntax highlight using the token colourer (one step at a time :) ). Exporting the plugin was a bit of a poser, but (thanks to Bob) it finally works. So now I have two ways of "providing" the plugin: running it as an Eclipse application (meaning two Eclipses running - not a fan) and dropping the .jar in the eclipse/dropins folder (much better). But what we'd _really_ like is an update site - although as far as I understand update sites don't dump anything in the dropins folder. So my question is really how to create an update site?

I haven't got much experience with creating update sites (this being my first), but have read some instructions here and there, and as far as I can see I have to create a feature(.xml) that provides the plugin, lists its dependencies (IMP), and then a site.xml file. But what is the structure of the update site? My guess is:


gbeta_updatesite/
|-- artifacts.jar
|-- content.jar
|-- features
| |-- dk.au.cs.gbeta_1.0.0.jar
|-- plugins
| |-- gbIDE_1.0.1.jar
|-- site.xml


but this doesn't work properly. It can be found as an update site (so I guess no problem with site.xml), but the plugin doesn't work. First and foremost I get the following error (which I think is due to the token colourer's dependency on org.eclipse.swt)


org.eclipse.swt.SWTException: Failed to execute runnable (org.eclipse.swt.SWTException: Widget is disposed)
at org.eclipse.swt.SWT.error(SWT.java:3884)
at org.eclipse.swt.SWT.error(SWT.java:3799)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchr onizer.java:137)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.jav a:3468)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3115)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2405)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:22 21)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
at org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:493)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplication.java:113)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:194)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:368)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce ssorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe thodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java: 559)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
Caused by: org.eclipse.swt.SWTException: Widget is disposed
at org.eclipse.swt.SWT.error(SWT.java:3884)
at org.eclipse.swt.SWT.error(SWT.java:3799)
at org.eclipse.swt.SWT.error(SWT.java:3770)
at org.eclipse.swt.widgets.Widget.error(Widget.java:450)
at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:388)
at org.eclipse.swt.widgets.Widget.getData(Widget.java:476)
at org.eclipse.jface.viewers.AbstractTreeViewer.updateChildren( AbstractTreeViewer.java:2620)
at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh Struct(AbstractTreeViewer.java:1863)
at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(T reeViewer.java:716)
at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh (AbstractTreeViewer.java:1838)
at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh (AbstractTreeViewer.java:1794)
at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh (AbstractTreeViewer.java:1780)
at org.eclipse.jface.viewers.StructuredViewer$7.run(StructuredV iewer.java:1457)
at org.eclipse.jface.viewers.StructuredViewer.preservingSelecti on(StructuredViewer.java:1392)
at org.eclipse.jface.viewers.TreeViewer.preservingSelection(Tre eViewer.java:402)
at org.eclipse.jface.viewers.StructuredViewer.preservingSelecti on(StructuredViewer.java:1353)
at org.eclipse.jface.viewers.StructuredViewer.refresh(Structure dViewer.java:1455)
at org.eclipse.jface.viewers.ColumnViewer.refresh(ColumnViewer. java:537)
at org.eclipse.ui.dialogs.FilteredTree$NotifyingTreeViewer.refr esh(FilteredTree.java:1205)
at org.eclipse.jface.viewers.StructuredViewer.refresh(Structure dViewer.java:1414)
at org.eclipse.ui.dialogs.FilteredTree$NotifyingTreeViewer.refr esh(FilteredTree.java:1195)
at org.eclipse.pde.internal.runtime.registry.RegistryBrowser.de ferredRefresh(RegistryBrowser.java:664)
at org.eclipse.pde.internal.runtime.registry.RegistryBrowser.re fresh(RegistryBrowser.java:713)
at org.eclipse.pde.internal.runtime.registry.RegistryBrowserMod elChangeListener.update(RegistryBrowserModelChangeListener.j ava:138)
at org.eclipse.pde.internal.runtime.registry.RegistryBrowserMod elChangeListener$1.run(RegistryBrowserModelChangeListener.ja va:26)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:3 5)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchr onizer.java:134)
... 22 more


As an aside, the plugin doesn't work if it's just dumped in the eclipse/plugins folder - anyone have a quick explanation for this?

Wow, this turned into a long post, but I hope this doesn't put anyone off reading it! I'll be happy to provide more detail, just let me know...

Thanks in advance,
Thomas
Previous Topic:Update site with IMP-based plugin
Next Topic:New installation doesn't create Ast package
Goto Forum:
  


Current Time: Wed Apr 24 16:14:36 GMT 2024

Powered by FUDForum. Page generated in 0.02772 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top