Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[platform-ui-dev] Open a file programatically in Eclipse editor -- please help if possible

Hello guys,

This may be a well discussed topic for most of you. Let me explain what I am trying to do. I am trying to open a file(a .c file to be specific) external to Eclipse( not in a eclipse project in its workspace) programatically in Eclipse editor. I went through a lot of posts and forums/google search. I tried a few ways but to no avail.
Most of the things I tried I realised were for older versions of Eclipse API's.
Finally I found a way which required org.eclipse.core.runtime plugin. However the version was 2.1. I tried to include that and the code gave me no compile errors, but a runtime error saying
Exception in thread "main" java.lang.VerifyError: (class: org/eclipse/core/runtime/Plugin, method: <init> signature: (Lorg/eclipse/core/runtime/IPluginDescriptor;)V) Incompatible object argument for function call
at com.example.mouse.FileOpen.main(

Line 85 was
IWorkspaceRoot ws = ResourcesPlugin.getWorkspace().getRoot();

Here are some of my code snippets I tried but didnt work

1 )
   File file = new File("/home/rohit/func.c");
IFileStore fileOnLocalDisk = EFS.getLocalFileSystem().getStore(file.toURI());
FileStoreEditorInput editorInput = new FileStoreEditorInput(fileOnLocalDisk);
IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
IWorkbenchPage page = window.getActivePage();
try {
page.openEditor(editorInput, "org.eclipse.ui.DefaultTextEdtior");
} catch (PartInitException e) {
// TODO Auto-generated catch block

  IWorkspaceRoot ws = ResourcesPlugin.getWorkspace().getRoot();
IPath location = new Path("/home/rohit/func.c");
IFile file = ws.getFileForLocation(location);
IProject project = ws.getProject("External Files");

if (!project.exists())
try {

if (!project.isOpen());

//IFile file = project.getFile(location.lastSegment());
//file.createLink(location, IResource.NONE, null);
FileEditorInput fileEditorInput = new FileEditorInput(file);
IWorkbench workbench = PlatformUI.getWorkbench();
IEditorDescriptor desc = workbench.getEditorRegistry().getDefaultEditor(file.getName());
IWorkbenchPage page = workbench.getActiveWorkbenchWindow().getActivePage();
page.openEditor(fileEditorInput, desc.getId());

} catch (CoreException e) {
// TODO Auto-generated catch block

Well there are few more but no point listing them because all of them gave me errors.
The point is how do I open an external file in Eclipse editor. Please point me to some article/post/ideas or code snippets for Eclipse 3.5.1. There are many out there for older versions but nothing complete. I have spent a lot of time on this and have proceeded no where...
Any help would be greatly appreciated. Thank you for your time.

Thanks & Regards,
Rohit Girme

Back to the top