java - WindowBuilder 的 Java 版本不兼容
问题描述
我在 Eclipse 上安装了 WindowBuilder 来为程序创建图形用户界面。当我转到“设计”选项卡时,出现以下错误:
Eclipse 在 1.8 下运行,但是这个 Java 项目有 10 个 Java 兼容级别,因此 WindowBuilder 将无法从这个项目加载类。为项目使用较低级别的 Java,或使用更新的 Java 版本运行 Eclipse。
我目前已经安装了 Java 8(更新 171)和 Oxygen.3a(4.7.3a)(Eclipse 版本)。我以前下载过 Java 10,但我读到有一个错误,即 WindowBuilder 无法在该版本上运行,并且建议使用版本 8,这是我下载并安装的版本(在卸载版本 10 之后)。但问题仍然存在。
我能做些什么来解决这个问题?谢谢你。
解决方案
只需将项目的合规级别从 10 更改为 1.8,重新构建,设计选项卡应该可以工作:
要更改项目的合规级别:
- 在Project Explorer中选择项目的节点,右键单击并选择Properties。
- 从左侧的列中选择Java 编译器。
- 从执行环境中取消选中使用合规性...
- 从Compiler compliance level下拉列表中选择 1.8 。(大概它的当前值是 10。)
- 单击应用并关闭按钮。
- 使用 1.8 合规性重建项目。
- 设计选项卡现在应该可以正常工作了。
作为一个单独的问题,由于您已经卸载了 Java 10,如果您还没有这样做,您还应该将其从已安装的 JRE 中删除:
- Windows > 首选项 > Java > 已安装的 JRE
- 选择 JDK 10 的条目并单击Remove按钮。
- 如果删除时检查了 JDK 10 条目,您将被迫检查另一个 JRE 定义。
- 单击应用并关闭按钮。
推荐阅读
- sql - 如何在redshift Postgresql中使用字符串作为列名(字符串到列名的动态转换)
- javascript - d3-xyzoom:与 webpack 一起使用时,滚动(滚轮)缩放抛出“d3-xyzoom.js:83 Uncaught TypeError: Cannot read property 'button' of null”
- ruby - 将一个范围的每个项目分配给哈希中另一个范围的每个项目
- javascript - 单击选择/选项时的 JavaScript 新选项卡
- angular - 为什么 flushMicrotasks() 和 tick() 在 fakeAsync 中不执行 setImmediate 回调?
- django - Django 密码显示在表单数据(发布/请求)中
- python - 定位 ID 的最小值和最大值的数据框列
- apache-spark - 将每个 spark 数据框元素与同一数据框的所有其余部分进行比较
- mongodb - pgadmin4 的未完成安装不断阻止其他安装
- javascript - 为什么cypress看不到border *属性的css值?