我正在尝试安装来自Eclipse的星云软件。似乎,我错过了一点可能很少,但非常相关的一点。
我的主要目标是测试和工作与“星云示波器Widget”。
所以我照别人说的做了:
https://www.eclipse.org/nebula/downloads.php
并使用:
版本-第1.4.0版,并有:
下载-更新站点:http://download.eclipse.org/nebula/releases/1.4.0
我成功地将其导入eclipse,并在.p2中获得了一些目录和文件,如
在那里
META目录
epl-v10.html文件
feature.properties
feature.xml
license.html
我看不出来,这有什么用。不幸的是,Eclipse也没有看到它。
Java导入语句,如
导入org.eclipse.nebula.widgets.oscilloscope.multichannel.OscilloscopeDispatcher;
进口org.eclipse.swt.SWT;
还没有解决。
下一步:页面上有一个压缩文件,标题为
“更新站点回购压缩: repository.zip”
http://download.eclipse.org/nebula/releases/1.4.0/repository-nebula-1.4.0.zip
加载它时,很多jar文件都在里面--但是放在哪里呢?
接下来,当然有git链接:
https://github.com/eclipse/nebula
在那里人们可以得到一个“星云-母版”
我把它作为“档案馆”导入。结果我终于得到了一个项目
"org.eclipse.swt.nebula" containing several subfolders. My love interest, oszilloscope is in
"org.eclipse.swt.nebula“项目
...Folder小部件
...Folder oszilloskope,
...Folder org.eclipse.nebula.widgets.oscilloscope.snippets
...folder源
...Folder组织
...Folder月食
...Folder星云
...Folder小部件
...Folder示波器
...Folder片段。
我不认为,这种结构是有意的。试图运行演示程序时,我会收到以下错误:
“启动配置GridAllTests引用不存在的项目org.eclipse.nebula.widgets.grid.test。”晓以大义。
“org.eclipse.nebula.widgets.grid.test”是
文件夹网格,
文件夹宽度,
org.eclipse.swt.nebula项目
事情出了很大的问题,可能是在重要的时候。怎么才能把它弄对?
谢谢!
发布于 2017-11-19 16:06:40
如果您想在普通Java应用程序(而不是在OSGi应用程序中)中使用Nebula示波器小部件,您必须向您的Java添加以下JAR(项目>属性: Java ),在安装之后,可以在Eclipse安装目录的plugins
上找到它(使用添加外部JARs .按钮):
org.eclipse.swt_<version>.jar
(如org.eclipse.swt_3.106.1.v20170926-0519.jar
)org.eclipse.swt.<platform>_<version>.jar
(如org.eclipse.swt.win32.win32.x86_64_3.106.1.v20170926-0519.jar
)org.eclipse.equinox.common_<version>.jar
(如org.eclipse.equinox.common_3.9.0.v20170207-1454.jar
)org.eclipse.nebula.widgets.oscilloscope_<version>.jar
(如org.eclipse.nebula.widgets.oscilloscope_1.4.0.201711021145.jar
)OscilloscopeExampleTab.java
还需要在普通Java项目中使用它的适配性:
extends AbstractExampleTab
@Override
sfinal String path = FileLocator.getBundleFile(Platform.getBundle(BUNDLE)).getPath();
行更改为final String path = "wavs";
(如果使用声音,则必须创建包含示例的*.wav
文件的文件夹wavs
)} catch (IOException e) {
更改为} catch (Throwable e) {
使用这些适配器,您可以通过以下主要方法运行示例:
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应用程序:
https://stackoverflow.com/questions/47376963
复制相似问题