Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:Eclipse插件创建问题_Java_Eclipse Plugin - Fatal编程技术网

Java:Eclipse插件创建问题

Java:Eclipse插件创建问题,java,eclipse-plugin,Java,Eclipse Plugin,下面是我试图重用的插件代码,它来自于我已经掌握的旧代码。 插件无法正常运行。 我已经复制了代码的插件部分 请帮我解决这个问题 关于在Eclipse Helios中运行 更新了新的错误图像 但我使用的是JDK1.6 更新了新的错误图像 有一次,我能够在调试模式下在RAD中运行插件,但无法将其作为插件安装在RAD中。由于创建的插件jar在启动时未在Eclipse或RAD中检测到。 这里尝试实现的想法是,当用户尝试调用插件时,获得正确的结果。并将其作为参数传递给独立代码 Activator.java

下面是我试图重用的插件代码,它来自于我已经掌握的旧代码。 插件无法正常运行。 我已经复制了代码的插件部分

请帮我解决这个问题

关于在Eclipse Helios中运行 更新了新的错误图像 但我使用的是JDK1.6 更新了新的错误图像 有一次,我能够在调试模式下在RAD中运行插件,但无法将其作为插件安装在RAD中。由于创建的插件jar在启动时未在Eclipse或RAD中检测到。 这里尝试实现的想法是,当用户尝试调用插件时,获得正确的结果。并将其作为参数传递给独立代码

Activator.java

FindUnwantedJarAction.java

Plugin.xml


您还应该给出MANIFEST.MF以进行完整诊断,但最有可能的原因是,您正在使用不同于您的开发Eclipse实例所使用的JDK运行RAD,并且它早于您的bundle目标环境,该环境在MANIFEST.MF中设置为JavaSE-1.6


这可能是您可以在调试模式下成功运行RAD,但不能作为独立应用程序运行的原因。请查看RAD实例的日志并查看java.version=value。应该是1.6。。。或更高版本。

请指定遇到的问题。这不是调试站点oops!!!。添加了问题facedDid您试图添加jar作为插件依赖项,因为您显示的对话框似乎无法找到合适的类&dnt忘记添加activator类。最好的方法是创建一个由Eclipse提供的模板插件项目,然后添加代码。@Eshika我已更新了错误图像。我曾尝试使用插件模板,但仍在试图减少代码-通过删除不需要的插件引用,我无法做到这一点。因为我使用的模板通常有很多不需要的插件依赖项,所以Eclipse有它自己的Java路径。你确定它设置为使用正确的JDK吗?
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);
    }
}
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;
    }

}
<?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>