I call the getStateLocation() method this way:
package core;
import org.eclipse.core.runtime.Plugin;
public class MyPlugin extends Plugin {
public MyPlugin(){
super();
}
public String getPath(){
System.out.println("url: "+getStateLocation().toFile().getAbsolutePath());
return getStateLocation().toFile().getAbsolutePath();
}
}
but it throws this exceptions:
java.lang.NullPointerException
at org.eclipse.core.internal.runtime.DataArea.getStateLocation(DataArea.java:78)
at org.eclipse.core.internal.runtime.InternalPlatform.getStateLocation(InternalPlatform.java:718)
at org.eclipse.core.runtime.Plugin.getStateLocation(Plugin.java:300)
at core.MyPlugin.getPath(MyPlugin.java:12)
at core.Globals.getPluginDir(Globals.java:148)
at core.Globals.<clinit>(Globals.java:46)
at core.ParserHtml.<init>(ParserHtml.java:41)
at flexrss_1.views.rssView.<init>(rssView.java:75)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
at java.lang.Class.newInstance0(Class.java:350)
at java.lang.Class.newInstance(Class.java:303)
at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:157)
at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:759)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:51)
at org.eclipse.ui.internal.WorkbenchPlugin$1.run(WorkbenchPlugin.java:242)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67)
at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:238)
at org.eclipse.ui.internal.registry.ViewDescriptor.createView(ViewDescriptor.java:69)
at org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.java:292)
at org.eclipse.ui.internal.ViewReference.createPart(ViewReference.java:197)
at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:566)
at org.eclipse.ui.internal.WorkbenchPage$ActivationList.setActive(WorkbenchPage.java:3915)
at org.eclipse.ui.internal.WorkbenchPage.restoreState(WorkbenchPage.java:2929)
at org.eclipse.ui.internal.WorkbenchWindow.restoreState(WorkbenchWindow.java:1936)
at org.eclipse.ui.internal.Workbench.doRestoreState(Workbench.java:2873)
at org.eclipse.ui.internal.Workbench.access$14(Workbench.java:2821)
at org.eclipse.ui.internal.Workbench$20.run(Workbench.java:1697)
at org.eclipse.ui.internal.Workbench.runStartupWithProgress(Workbench.java:1437)
at org.eclipse.ui.internal.Workbench.restoreState(Workbench.java:1695)
at org.eclipse.ui.internal.Workbench.access$12(Workbench.java:1666)
at org.eclipse.ui.internal.Workbench$18.run(Workbench.java:1545)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.ui.internal.Workbench.restoreState(Workbench.java:1489)
at org.eclipse.ui.internal.WorkbenchConfigurer.restoreState(WorkbenchConfigurer.java:183)
at org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:702)
at org.eclipse.ui.internal.Workbench.init(Workbench.java:1101)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1863)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:422)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95)
at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336)
at org.eclipse.core.launcher.Main.basicRun(Main.java:280)
at org.eclipse.core.launcher.Main.run(Main.java:977)
at org.eclipse.core.launcher.Main.main(Main.java:952)