Java 如何安装";“星云”;投影到Eclipse中

Java 如何安装";“星云”;投影到Eclipse中,java,eclipse,nebula,Java,Eclipse,Nebula,我正在尝试从Eclipse安装Nebula软件。看来,我错过了一个可能很少,但非常相关的一点。 我的主要目标是测试和使用“星云示波器小部件”。 所以我按照在: 并使用: 发行版-发行版1.4.0 还有: 下载-更新站点: 我设法将它安装到eclipse中,并在.p2中获得了一些目录和文件,如 \org.eclipse.equinox.p2.core\ \pool\features\org.eclipse.nebula.widgets.scoscope.feature_1.4.0.2017110

我正在尝试从Eclipse安装Nebula软件。看来,我错过了一个可能很少,但非常相关的一点。
我的主要目标是测试和使用“星云示波器小部件”。
所以我按照在:

并使用:
发行版-发行版1.4.0 还有:
下载-更新站点:
我设法将它安装到eclipse中,并在.p2中获得了一些目录和文件,如

  • \org.eclipse.equinox.p2.core\
  • \pool\features\org.eclipse.nebula.widgets.scoscope.feature_1.4.0.201711021145\
还有
META-INF目录
包含一个文件 epl-v10.html
功能属性
feature.xml
license.html

我不明白这有什么帮助。 不幸的是,Eclipse也没有看到它。
Java导入语句,如
导入org.eclipse.nebula.widgets.scoscope.multichannel.scoscopedispatcher
导入org.eclipse.swt.swt
仍未解决的问题。

下一次尝试: 页面上有一个zip文件,标题为
“更新站点repo压缩:repository.zip”

加载它时,很多jar文件都在其中,但放在哪里呢?

下一次尝试,当然是git链接:

在那里可以得到“星云大师.zip”

我将其作为“从存档”导入。结果我终于得到了一个项目
“org.eclipse.swt.nebula” 包含多个子文件夹。我最感兴趣的是,oszilloscope在
项目“org.eclipse.swt.nebula”
…文件夹小部件,
…文件夹oszilloskope,
…文件夹org.eclipse.nebula.widgets.scoscope.snippets
…文件夹src
…文件夹组织
…文件夹eclipse
文件夹星云
…文件夹小部件
文件夹示波器
…文件夹片段。
我认为,这种结构不是有意的。 尝试运行演示时,会出现如下错误
“启动配置GridAllTests引用不存在的项目org.eclipse.nebula.widgets.grid.test。” 什么是对的

“org.eclipse.nebula.widgets.grid.test”是
文件夹网格,
文件夹窗口的,
位于org.eclipse.swt.nebula项目的

可能是在进口时,出现了严重的问题。 如何使它正确


谢谢

如果您想在普通Java应用程序(而不是OSGi应用程序)中使用Nebula示波器小部件,您必须将以下JAR添加到Java构建路径(项目>属性:Java构建路径)安装后,可以在Eclipse安装目录的
插件
supdirectory中找到(使用添加外部JAR…按钮):

  • org.eclipse.swt\u.jar
    (例如
    org.eclipse.swt\u 3.106.1.v20170926-0519.jar
  • org.eclipse.swt.\uu70926-0519.jar
    (例如
    org.eclipse.swt.win32.win32.x86\u 64\u 3.106.1.v20170926-0519.jar
  • org.eclipse.equinox.common.jar
    (例如
    org.eclipse.equinox.common\u 3.9.0.v20170207-1454.jar
  • org.eclipse.nebula.widgets.scoscope\u1145.jar
    (例如
    org.eclipse.nebula.widgets.scoscoscope\u1.4.0.201711021145.jar
还需要进行自适应,以便在普通Java项目中使用它:

  • 删除扩展AbstractExampleTab
  • 删除所有
    @覆盖
    s
  • 更改行
    final String path=FileLocator.getBundleFile(Platform.getBundle(BUNDLE)).getPath()
    最终字符串路径=“wavs”
    (如果使用声音,则必须创建一个文件夹
    wavs
    ,其中包含示例的
    *.wav
    文件)
  • 将行
    }catch(IOException e){
    更改为
    }catch(Throwable e){
  • Source>组织导入以删除无法解析的非必需导入
  • 通过这些自适应,您可以通过以下主要方法运行示例:

    public static void main (String [] args) {
        Display display = new Display ();
        Shell shell = new Shell (display);
        shell.setSize(600, 800);
    
        RowLayout layout = new RowLayout(SWT.HORIZONTAL);
        layout.wrap = true;
        layout.fill = true;
        layout.justify = false;
        shell.setLayout(layout);
    
        Composite mainArea = new Composite(shell, SWT.None);
        mainArea.setLayout(new RowLayout());
    
        Composite settings = new Composite(shell, SWT.None);
        settings.setLayout(new RowLayout(SWT.HORIZONTAL));
    
        OscilloscopeExampleTab osci = new OscilloscopeExampleTab();
        osci.createParameters(settings);
        osci.createControl(mainArea);
    
        shell.open ();
        while (!shell.isDisposed ()) {
            if (!display.readAndDispatch ()) display.sleep ();
        }
        display.dispose ();
    }
    
    作为普通Java应用程序生成的Nebula示波器小部件示例:


    您想在普通Java应用程序中还是在OSGi应用程序中使用该小部件?如果是普通Java应用程序,您必须将Nebula JAR和所有必需的JAR添加到Java类路径。安装后,您将在Eclipse安装目录的
    plugins
    子目录中找到JAR。如果是OSGi应用程序,创建一个新的插件项目,并向Nebular插件/bundle添加依赖项。Hello@tarik!我想提醒您,如果它解决了您的问题,那么您应该接受下面howlger的答案。有关更多信息,请参阅。Hello howlger,非常感谢。您似乎花了一些时间在您的平台上对其进行本地测试。我按照您的建议,几个错误消失了。3仍然存在-导入org.eclipse.core.runtime.Platform;
    导入org.eclipse.nebula.examples.AbstractExampleTab;
    无法重新加载,可能正因为这个原因,
    只需删除这些导入,删除
    扩展AbstractExampleTab之后就不再需要了和更改
    最终字符串路径=…
    。你好,霍尔格,非常感谢。您似乎花了一些时间在您的平台上进行本地测试。因此,我很抱歉没有带着一个成功的故事回来,但是新的问题:我听从了您的建议,几个错误消失了。这些仍然存在-import org.eclipse.core.runtime.Platform;import org.eclipse.nebula.examples.AbstractExampleTab;无法解析,可能是因为这个原因,例如显示=新显示();外壳=新外壳(显示);失败。类型org.osgi.framework.bundle…无法解决。谢谢!-Tarik如果您在
    示波器示例选项卡
    中执行源代码>组织导入,则应该不会再有编译错误。否则,请确保您只有类
    示波器示例