Good afternoon,
I have been using Eclipse and Subclipse (with JavaHL) for a few months without any problem so far. After an update of some plugins (including Subclipse) yesterday (i.e. on 13/03/19), subclipse is no longer working.
For example, I am no longer able to commit or pull any file and when I get a look at window
> preference
> Team
> SVN
, eclipse displayed the following message:
Unable to create the selected preference page.
java.lang.reflect.InvocationTargetException
Please find below the exception stack trace:
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:206)
at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:934)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:246)
at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:63)
at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:284)
at org.eclipse.ui.internal.dialogs.WorkbenchPreferenceNode.createPage(WorkbenchPreferenceNode.java:51)
at org.eclipse.jface.preference.PreferenceDialog.createPage(PreferenceDialog.java:1279)
at org.eclipse.ui.internal.dialogs.FilteredPreferenceDialog.createPage(FilteredPreferenceDialog.java:361)
at org.eclipse.jface.preference.PreferenceDialog.showPage(PreferenceDialog.java:1166)
at org.eclipse.ui.internal.dialogs.FilteredPreferenceDialog.showPage(FilteredPreferenceDialog.java:675)
at org.eclipse.jface.preference.PreferenceDialog$5.lambda$0(PreferenceDialog.java:660)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:72)
at org.eclipse.jface.preference.PreferenceDialog$5.selectionChanged(PreferenceDialog.java:657)
at org.eclipse.jface.viewers.StructuredViewer$3.run(StructuredViewer.java:874)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.ui.internal.JFaceUtil.lambda$0(JFaceUtil.java:47)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:176)
at org.eclipse.jface.viewers.StructuredViewer.firePostSelectionChanged(StructuredViewer.java:871)
at org.eclipse.jface.viewers.StructuredViewer.handlePostSelect(StructuredViewer.java:1240)
at org.eclipse.jface.viewers.StructuredViewer.lambda$0(StructuredViewer.java:1263)
at org.eclipse.swt.events.SelectionListener$1.widgetSelected(SelectionListener.java:84)
at org.eclipse.jface.util.OpenStrategy.firePostSelectionEvent(OpenStrategy.java:264)
at org.eclipse.jface.util.OpenStrategy.access$5(OpenStrategy.java:259)
at org.eclipse.jface.util.OpenStrategy$1.lambda$2(OpenStrategy.java:420)
at org.eclipse.swt.widgets.Display.timerProc(Display.java:5566)
at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native Method)
at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:1581)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4470)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:822)
at org.eclipse.jface.window.Window.open(Window.java:798)
at org.eclipse.ui.internal.dialogs.WorkbenchPreferenceDialog.open(WorkbenchPreferenceDialog.java:214)
at org.eclipse.ui.internal.OpenPreferencesAction.run(OpenPreferencesAction.java:66)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:476)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:568)
at org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:400)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5663)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1386)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4931)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4472)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1173)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1062)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:636)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:563)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:151)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:155)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:595)
at org.eclipse.equinox.launcher.Main.run(Main.java:1501)
at org.eclipse.equinox.launcher.Main.main(Main.java:1474)
Caused by: java.lang.LinkageError: Native library version must be at least 1.11.0,but is only 1.9.3 (r1718519)
at org.apache.subversion.javahl.NativeResources.init(NativeResources.java:150)
at org.apache.subversion.javahl.NativeResources.loadNativeLibrary(NativeResources.java:111)
at org.apache.subversion.javahl.types.Version.<clinit>(Version.java:40)
at org.apache.subversion.javahl.NativeResources.init(NativeResources.java:147)
at org.apache.subversion.javahl.NativeResources.loadNativeLibrary(NativeResources.java:111)
at org.apache.subversion.javahl.SVNClient.<clinit>(SVNClient.java:52)
at org.tigris.subversion.svnclientadapter.javahl.JhlClientAdapterFactory.isAvailable(JhlClientAdapterFactory.java:184)
at org.tigris.subversion.clientadapter.javahl.Activator.isAvailable(Activator.java:83)
at org.tigris.subversion.clientadapter.javahl.Activator.getVersionSynchronized(Activator.java:72)
at org.tigris.subversion.clientadapter.javahl.Activator.getVersionString(Activator.java:67)
at org.tigris.subversion.clientadapter.javahl.Activator.getDisplayName(Activator.java:97)
at org.tigris.subversion.subclipse.ui.preferences.SVNPreferencesPage.<init>(SVNPreferencesPage.java:102)
... 66 more
Root exception:
java.lang.LinkageError: Native library version must be at least 1.11.0,but is only 1.9.3 (r1718519)
at org.apache.subversion.javahl.NativeResources.init(NativeResources.java:150)
at org.apache.subversion.javahl.NativeResources.loadNativeLibrary(NativeResources.java:111)
at org.apache.subversion.javahl.types.Version.<clinit>(Version.java:40)
at org.apache.subversion.javahl.NativeResources.init(NativeResources.java:147)
at org.apache.subversion.javahl.NativeResources.loadNativeLibrary(NativeResources.java:111)
at org.apache.subversion.javahl.SVNClient.<clinit>(SVNClient.java:52)
at org.tigris.subversion.svnclientadapter.javahl.JhlClientAdapterFactory.isAvailable(JhlClientAdapterFactory.java:184)
at org.tigris.subversion.clientadapter.javahl.Activator.isAvailable(Activator.java:83)
at org.tigris.subversion.clientadapter.javahl.Activator.getVersionSynchronized(Activator.java:72)
at org.tigris.subversion.clientadapter.javahl.Activator.getVersionString(Activator.java:67)
at org.tigris.subversion.clientadapter.javahl.Activator.getDisplayName(Activator.java:97)
at org.tigris.subversion.subclipse.ui.preferences.SVNPreferencesPage.<init>(SVNPreferencesPage.java:102)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:206)
at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:934)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:246)
at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:63)
at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:284)
at org.eclipse.ui.internal.dialogs.WorkbenchPreferenceNode.createPage(WorkbenchPreferenceNode.java:51)
at org.eclipse.jface.preference.PreferenceDialog.createPage(PreferenceDialog.java:1279)
at org.eclipse.ui.internal.dialogs.FilteredPreferenceDialog.createPage(FilteredPreferenceDialog.java:361)
at org.eclipse.jface.preference.PreferenceDialog.showPage(PreferenceDialog.java:1166)
at org.eclipse.ui.internal.dialogs.FilteredPreferenceDialog.showPage(FilteredPreferenceDialog.java:675)
at org.eclipse.jface.preference.PreferenceDialog$5.lambda$0(PreferenceDialog.java:660)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:72)
at org.eclipse.jface.preference.PreferenceDialog$5.selectionChanged(PreferenceDialog.java:657)
at org.eclipse.jface.viewers.StructuredViewer$3.run(StructuredViewer.java:874)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.ui.internal.JFaceUtil.lambda$0(JFaceUtil.java:47)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:176)
at org.eclipse.jface.viewers.StructuredViewer.firePostSelectionChanged(StructuredViewer.java:871)
at org.eclipse.jface.viewers.StructuredViewer.handlePostSelect(StructuredViewer.java:1240)
at org.eclipse.jface.viewers.StructuredViewer.lambda$0(StructuredViewer.java:1263)
at org.eclipse.swt.events.SelectionListener$1.widgetSelected(SelectionListener.java:84)
at org.eclipse.jface.util.OpenStrategy.firePostSelectionEvent(OpenStrategy.java:264)
at org.eclipse.jface.util.OpenStrategy.access$5(OpenStrategy.java:259)
at org.eclipse.jface.util.OpenStrategy$1.lambda$2(OpenStrategy.java:420)
at org.eclipse.swt.widgets.Display.timerProc(Display.java:5566)
at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native Method)
at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:1581)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4470)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:822)
at org.eclipse.jface.window.Window.open(Window.java:798)
at org.eclipse.ui.internal.dialogs.WorkbenchPreferenceDialog.open(WorkbenchPreferenceDialog.java:214)
at org.eclipse.ui.internal.OpenPreferencesAction.run(OpenPreferencesAction.java:66)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:476)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:568)
at org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:400)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5663)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1386)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4931)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4472)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1173)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1062)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:636)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:563)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:151)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:155)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:595)
at org.eclipse.equinox.launcher.Main.run(Main.java:1501)
at org.eclipse.equinox.launcher.Main.main(Main.java:1474)
Here are also the information about the session data:
eclipse.buildId=4.10.0.I20181206-0815
java.version=1.8.0_191
java.vendor=Oracle Corporation
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
Framework arguments: -product org.eclipse.epp.package.java.product
Command-line arguments: -data file:/path/to/workspace/ -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product
The following elements were updated yesterday:
Marketplace Client
from 1.7.2.v20180829-193
to 1.7.4.v20190206-174
Subclipse
from 4.2.4.201804261743
to 4.3.0.201901172050
Subversion JavaHL Windows Native DLL's 1.9.7.201803201521
to Subversion 1.11 JavaHL 1.11.1.20190116204
SVNKit Client Adapter 1.8.12.1
to 1.8.12.
The eclipse.ini
file contains a line with the path to JavaHL -Djava.library.path=/usr/lib/x86_64-linux-gnu/jni
under the -vmargs
statement.
I am working on Ubuntu 16.04. I've already tried, without any success to:
Uninstall and reinstall subclipse via the Marketplace
Uninstall and reinstall subclipse via Help
> Install New Software...
providing the link to Subclipse binaries (https://dl.bintray.com/subclipse/releases/subclipse/4.3.x/
or https://dl.bintray.com/subclipse/releases/subclipse/latest/
)
Use a new empty workspace
Perform a clean install of eclipse and subclipse with a new empty workspace on the same computer
I also tried to install subclipse on an other computer (where eclipse was installed but on which subclipse has never been installed), and it seems that I met the same problem...
I would be really grateful if anyone could give me some insight about what's going wrong here or how to solve this problem,
Thanks by advance!
Sébastien
It is not a problem per-se and is more or less explained in the docs:
https://github.com/subclipse/subclipse/wiki
The current version of Subclipse supports SVN 1.11 or 1.10. On every OS except Windows you are responsible for providing the native libraries (see the JavaHL links on above page). Your error is that you installed the 1.11 support but you have the SVN 1.9.x native libraries installed. You do not mention your OS, but one solution would have been to update the installed SVN client to 1.11.
As noted further down on the page, if you are stuck on SVN 1.9.x client then you have to install the older Subclipse 4.2.x version which supports 1.9.
If you can get 1.10, but not 1.11 then you just have to uninstall the 1.11 JavaHL plugin and install the 1.10 plugin. Both are on the Subclipse update site.
I finally found a way to fix this problem.
I performed a clean install (after having deleted all files related to eclipse - which includes obviously the folder where eclipse was installed but also the .p2
and .subversion
folders in the home
directory, excluding the workspace where I did not remove any file) and installed subclipse via the Help
> Install New Software...
, providing the link to the previous version of Subclipse, i.e. Subclipse 4.2 (https://dl.bintray.com/subclipse/releases/subclipse/4.2.x/). And all is working well again so far.
I think that people who meet the same problems as mine could also fix this by a simplier way by reverting the install prior to the last update (avoiding then to perform a completely new install...) going throught Help
> About Eclipse IDE
> Installation Details
>Installation History
and then selecting the last installation and clicking to revert
. Nevertheless, I was not able to do this as I modified some files which seem to be necessary for Eclipse to do this. So I do not know for sure if this second method is working...
Even if this is a way to fix that matter, I do not understand what is going wrong on the current Subclipse version (4.3). In particular is this a problem which is known and reported for the current version (but in such case I did not find any documentation or question raised about it...) or something related to the configuration I use or something I did?! If anybody have some idea about this, I would be happy to understand :)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With