[英]How to run an eclipse workbench action
我正在開發一個eclipse插件。 我已經聲明了一個帶有一個動作的動作集,但是當該動作被調用時,它並沒有做什么。
這是該動作的類別。
package instantmessengerplugin;
import java.io.IOException;
import org.eclipse.jface.action.Action;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.IWorkbenchWindowActionDelegate;
public class ActionClass implements IWorkbenchWindowActionDelegate {
@Override
public void dispose() {
// TODO Auto-generated method stub
}
@Override
public void init(IWorkbenchWindow window) {
//this.window = window;
}
@Override
public void run(IAction arg0) {
System.out.println("hello");
Connection.main(null);
}
@Override
public void selectionChanged(IAction arg0, ISelection arg1) {
// TODO Auto-generated method stub
}
}
所以我知道此類可以正常工作,因為run方法中的print語句執行得很好。
連接包含在我添加到類路徑的jar中。 它存在於項目的引用庫中。 我的目標是使操作啟動jar文件。
我已經在Connection.main行上運行調試器。
這是我進入此行時的堆棧:
EventTable.sendEvent(Event) line: 87
ToolItem(Widget).sendEvent(Event) line: 1003
Display.runDeferredEvents() line: 3880
Display.readAndDispatch() line: 3473
Workbench.runEventLoop(Window$IExceptionHandler, Display) line: 2405
Workbench.runUI() line: 2369
Workbench.access$4(Workbench) line: 2221
Workbench$5.run() line: 500
Realm.runWithDefault(Realm, Runnable) line: 332
Workbench.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 493
PlatformUI.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 149
IDEApplication.start(IApplicationContext) line: 113
EclipseAppHandle.run(Object) line: 194
EclipseAppLauncher.runApplication(Object) line: 110
EclipseAppLauncher.start(Object) line: 79
EclipseStarter.run(Object) line: 368
EclipseStarter.run(String[], Runnable) line: 179
NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method]
NativeMethodAccessorImpl.invoke(Object, Object[]) line: not available
DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: not available
Method.invoke(Object, Object...) line: not available
Main.invokeFramework(String[], URL[]) line: 559
Main.basicRun(String[]) line: 514
Main.run(String[]) line: 1311
Main.main(String[]) line: 1287
我不知道該怎么做。 我確信,如果我了解此堆棧,便可以對其進行修復。
誰能看到問題所在? 從日食動作中啟動罐子有什么問題嗎?
也許Jar是用比eclipse當前版本新的jdk構建的。 我過去也有類似的問題。
事件處理程序引發並吞噬了異常。 該異常可能在錯誤日志中,因此查看該異常可能會給您更多提示。
問題可能出在幾件事上,但是很有可能由於某種原因而無法加載Connection類,並且拋出了ClassNotFoundException。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.