1
下面是我嘗試從舊手代碼中重用的插件代碼。 該插件只是不會正常運行。 我已經複製了代碼的插件部分。Java:Eclipse插件創建問題
請幫我解決問題。
- 在Eclipse的赫利俄斯運行
更新的新的錯誤形象
但我使用JDK 1.6 更新的新的錯誤形象 - 一旦我能夠運行該插件在RAD在調試模式下,但無法將其安裝在rad中作爲插件。由於創建的插件jar在啓動時未在Eclipse或RAD中檢測到。
想法設法實現這裏是得到<項目文件夾的位置,當用戶試圖調用插件>。並將其作爲參數傳遞給獨立代碼。
Activator.java
public class Activator extends AbstractUIPlugin {
// The plug-in ID
public static final String PLUGIN_ID = "PluginName";
// The shared instance
private static Activator plugin;
public Activator() {
plugin = this;
}
public void start(BundleContext context) throws Exception {
System.out.println("Loading the PluginName");
super.start(context);
}
public void stop(BundleContext context) throws Exception {
plugin = null;
System.out.println("Exiting the PluginName");
super.stop(context);
}
public static Activator getDefault() {
return plugin;
}
public static ImageDescriptor getImageDescriptor(String path) {
return imageDescriptorFromPlugin(PLUGIN_ID, path);
}
}
FindUnwantedJarAction.java
import org.eclipse.core.resources.IProject;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.IObjectActionDelegate;
import org.eclipse.ui.IWorkbenchPart;
public class FindUnwantedJarAction implements IObjectActionDelegate {
private IStructuredSelection selection;
public void setActivePart(IAction arg0, IWorkbenchPart arg1) {
// TODO Auto-generated method stub
}
public void run(IAction arg0) {
IProject project = (IProject) selection.getFirstElement();
String projName = project.getName();
String projectLocation = project.getLocation().toString();
//call another class with this parameter
}
public void selectionChanged(IAction arg0, ISelection paramSelection) {
this.selection = (IStructuredSelection) paramSelection;
}
}
的plugin.xml
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>
<extension
point="org.eclipse.ui.popupMenus">
<objectContribution
objectClass="org.eclipse.core.resources.IProject"
adaptable="true"
id="core.UnwantedJar">
<menu
label="Find Unwanted Jars"
path="additions"
id="FindUnJar.menu1">
<separator
name="group1">
</separator>
</menu>
<action
label="Find!!!"
class="core.marksman.action.FindUnwantedJarAction"
menubarPath="FindUnJar.menu1/group1"
enablesFor="1"
id="CVSLocal.newAction">
</action>
</objectContribution>
</extension>
</plugin>
您能否指定遇到的問題。這不是一個調試網站 –
糟糕!添加了這個問題 –
您是否試圖將該jar添加爲插件依賴項,因爲您已經顯示的對話框,它似乎無法找到合適的類&dnt忘記添加激活器類。最佳方法是,創建一個模板由Eclipse提供的插件項目,然後添加您的代碼。 – Eshika