Create a new Plug-In project using Eclipse PDE. Hook your bundle's Activator class into the Common Navigator API to receive selections for IResource. For each IResource selected, use the FileLocator to get a file URI, with which you can construct a java.io.File object. This can then be opened in the operating system's native file explorer using Java 6 Desktop integration:
if (Desktop.isDesktopSupported()) {
Desktop desktop = Desktop.getDesktop();
desktop.open(new File("C:/"));
}
Actually you can do that through the built in External tool manager.
Here are the instructions : http://www.eclipsezone.com/eclipse/forums/t77655.html
I'm trying to get it work with Nautilus. However it works under Windows as I tried it.
Eclipse Explorer is an eclipse plugin helping you to open the folder or select resource in explorer quickly. It supports key assist, can open common resource and all java element location, even .jar in library.
open explorer in eclipse
- in eclipse -> external tools configurations
- in program tree -> new
name: OpenExplore
localtion: C:\Windows\explorer.exe
Arguments: /select,${selected_resource_loc}\
The command configured by default on a Linux platform (dbus-send ...) fails on CentOS 6 and CentOS 7. Changing it to nautilus "${selected_resource_parent_loc}" makes it work. I got this info from this documentation page, which I got from this bug report.
I'm creating an RCP app, and I don't want my users to have to manually change this setting. Using plug-in spy I found the relevant preference store and key. So this non-API call will set the preference programmatically:
With newer versions of nautilus you can specify ${selected_resource_loc} instead, in which case it opens the parent folder with the specified resource selected. I observed this with nautilus v 3.14, but version 2.28 throws an error is the resource is not a folder.