Programmatically get java proposals for eclipse bundle [message #1703019] |
Tue, 28 July 2015 01:25  |
Eclipse User |
|
|
|
Problem
I am developing one eclipse osgi bundle to correct java source code automatically. I am able to get java project object and a class object inside it which I want to correct. I put one test file in project which can be corrected (like duplicate imports) but I receive below error on my code
Error
[color=red]
java.lang.IllegalStateException: Workbench has not been created yet.
at org.eclipse.ui.PlatformUI.getWorkbench(PlatformUI.java:93)
at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.install(ASTProvider.java:236)
at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.<init>(ASTProvider.java:227)
at org.eclipse.jdt.internal.ui.JavaPlugin.getASTProvider(JavaPlugin.java:741)
at org.eclipse.jdt.ui.SharedASTProvider.getAST(SharedASTProvider.java:128)
at org.eclipse.jdt.internal.ui.text.correction.AssistContext.getASTRoot(AssistContext.java:119)
at org.eclipse.jdt.internal.ui.text.correction.ReorgCorrectionsSubProcessor.removeImportStatementProposals(ReorgCorrectionsSubProcessor.java:210)
at org.eclipse.jdt.internal.ui.text.correction.QuickFixProcessor.process(QuickFixProcessor.java:337)
at org.eclipse.jdt.internal.ui.text.correction.QuickFixProcessor.getCorrections(QuickFixProcessor.java:316)
at org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionProcessor$SafeCorrectionCollector.safeRun(JavaCorrectionProcessor.java:378)
at org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionProcessor$SafeCorrectionProcessorAccess.run(JavaCorrectionProcessor.java:339)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionProcessor$SafeCorrectionProcessorAccess.process(JavaCorrectionProcessor.java:335)
at org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionProcessor.collectCorrections(JavaCorrectionProcessor.java:468)
[/color]
Below is my code snippet:
....
CompletionProposalCollector collectorPrjTemp= new CompletionProposalCollector(javaProject); // this line throws error
IJavaCompletionProposal[] prjProposals = collectorPrjTemp.getJavaCompletionProposals();
System.out.println("prjProposals == "+prjProposals.length);
....
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.08043 seconds