我正在編寫一個插件來eclipse,我需要在給定的時間重新加載活動的目標平臺。 - 就像首選項 - >插件開發 - >目標平臺 - > Reload.button,當然是從我的插件動態。從插件中動態地重新加載目標平臺
我會想象這樣的事情會是這樣,但我不能找到入口/ MagicProvider:
MagicProvider.getTargetPlatforms().getActive().reload();
希望你們當中有些人知道:)
我正在編寫一個插件來eclipse,我需要在給定的時間重新加載活動的目標平臺。 - 就像首選項 - >插件開發 - >目標平臺 - > Reload.button,當然是從我的插件動態。從插件中動態地重新加載目標平臺
我會想象這樣的事情會是這樣,但我不能找到入口/ MagicProvider:
MagicProvider.getTargetPlatforms().getActive().reload();
希望你們當中有些人知道:)
試過Max的方法,但它似乎沒有工作。在查找了我發現的Eclipse源代碼後,ITargetDefinition只是一個工作副本,並且必須保存。所以代碼將是:
org.eclipse.pde.internal.core.target.provisional.ITargetPlatformService service = org.eclipse.pde.internal.core.PDECore.getDefault().acquireService(ITargetPlatformService.class.getName());
org.eclipse.pde.internal.core.target.provisional.ITargetDefinition target = service.getWorkspaceTargetHandle().getTargetDefinition();
target.resolve(IProgressMonitor);
org.eclipse.pde.internal.core.target.provisional.LoadTargetDefinitionJob.load(target);
但信用指標爲Max。 :)
如果別人需要的一些信息,我建議考慮看看
org.eclipse.pde.internal.ui.preferences.TargetPlatformPreferencePage
接近行771 - 812和方法handleReload() 和org.eclipse.pde.internal.ui.editor.targetdefinition.TargetEditor
近線線231
在這裏你去的伎倆:
org.eclipse.pde.internal.core.target.provisional.ITargetPlatformService service = org.eclipse.pde.internal.core.PDECore.getDefault().acquireService(ITargetPlatformService.class.getName());
org.eclipse.pde.internal.core.target.provisional.ITargetDefinition target = service.getWorkspaceTargetHandle().getTargetDefinition();
target.resolve(IProgressMonitor);
不MacOSX上工作+ eclipse Juno: 我收到一個異常: java.lang.NoClassDefFoundError:org/eclipse/pde/internal/core/target/temporary/ITargetPlatformService 適用於Linux和Win32。 – taitelman