Eclipse信息: 面向Web开发人员的Eclipse Java EE IDE。 构建ID:20100218-1602 JavaFx2.2 jdk1.8.0_05
我正在使用JavaFx和Eclipse开发桌面Java应用程序。我这样做
ObservableList<String>addressList = FXCollections.observableArrayList(addressListArray);
lv_property_list.setItems(addressList);
将我的数据(addressList)与列表视图(lv_property_list)链接起来。一切都很好。但是当我尝试通过这样做来自定义列表视图单元时
lv_property_list.setCellFactory(new Callback<ListView<String>,
ListCell<String>>() {
@Override
public ListCell<String> call(ListView<String> list) {
return new ColorRectCell();
}
}
);
并添加内部ColorRectCell类
class ColorRectCell extends ListCell<String> {
@Override
public void updateItem(String item, boolean empty) {
super.updateItem(item, empty);
Rectangle rect = new Rectangle(100, 20);
if (item != null) {
rect.setFill(Color.web(item));
setGraphic(rect);
}
}
我开始收到此错误:
无法解析java.util.function.Function类型。它是从所需的.class文件间接引用的
如果我在我的Package Explorer中深入查看链接库(JDK1.8.0_05)并找到java.util.function包,我可以看到Function.class在那里......但是当我双击它打开时,我在错误日志中收到错误对话框和这些消息:
!ENTRY org.eclipse.jdt.ui 4 2 2014-04-24 20:09:54.234!MESSAGE 从插件调用代码时出现问题: “org.eclipse.jdt.ui”。 !STACK 0 java.lang.NullPointerException at org.eclipse.jdt.core.dom.ASTParser.internalCreateAST(ASTParser.java:889) 在org.eclipse.jdt.core.dom.ASTParser.createAST(ASTParser.java:677) 在 org.eclipse.jdt.internal.ui.javaeditor.ASTProvider $ 1.run(ASTProvider.java:544) 在org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.createAST(ASTProvider.java:537) 在 org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.getAST(ASTProvider.java:478) 在 org.eclipse.jdt.ui.SharedASTProvider.getAST(SharedASTProvider.java:126) 在 org.eclipse.jdt.internal.ui.javaeditor.ClassFileEditor $ 3.run(ClassFileEditor.java:683) 在org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
!ENTRY org.eclipse.jdt.ui 4 0 2014-04-24 20:09:54.234!MESSAGE错误 在AST创建期间在JDT Core中!STACK 0 java.lang.NullPointerException at org.eclipse.jdt.core.dom.ASTParser.internalCreateAST(ASTParser.java:889) 在org.eclipse.jdt.core.dom.ASTParser.createAST(ASTParser.java:677) 在 org.eclipse.jdt.internal.ui.javaeditor.ASTProvider $ 1.run(ASTProvider.java:544) 在org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.createAST(ASTProvider.java:537) 在 org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.getAST(ASTProvider.java:478) 在 org.eclipse.jdt.ui.SharedASTProvider.getAST(SharedASTProvider.java:126) 在 org.eclipse.jdt.internal.ui.javaeditor.ClassFileEditor $ 3.run(ClassFileEditor.java:683) 在org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
!ENTRY org.eclipse.ui 4 0 2014-04-24 20:09:54.285!MESSAGE An 意外的异常被抛出。 !堆栈0 java.lang.NullPointerException ....
!ENTRY org.eclipse.ui 4 0 2014-04-24 20:09:54.291!MESSAGE无法 创建编辑器ID org.eclipse.jdt.ui.ClassFileEditor:一个意外的 异常被抛出。 !STACK 0 java.lang.NullPointerException ....
!ENTRY org.eclipse.ui 2 2 2014-04-24 20:09:54.300!MESSAGE忽略 尝试添加已注册的可保存!STACK 0 org.eclipse.core.runtime.AssertionFailedException:unknown savedable: ....
!ENTRY org.eclipse.jface 4 2 2014-04-24 20:09:54.310!MESSAGE问题 从插件调用代码时发生:“org.eclipse.jface”。 !堆 0 java.lang.NullPointerException ....
我已经尝试从构建路径中删除这个库并返回到JDK1.6或者最后一个版本,但它似乎没有任何区别。
另外,直接导入java.util.function.Function失败,因为eclipse无法找到类。
提前感谢任何想法。
斯科特