在 JME SDK 3.0+ 中,lcdui 去了哪里?

Posted

技术标签:

【中文标题】在 JME SDK 3.0+ 中,lcdui 去了哪里?【英文标题】:Where did lcdui go, in JME SDK 3.0+? 【发布时间】:2014-02-18 19:37:39 【问题描述】:

我想写一个小小的“hello world”J2ME MIDlet。在像this one 这样的示例中,javax.microedition.lcdui.* 中的类用于显示输出。当我尝试在 Eclipse 中编译它时,我得到了错误,

导入 javax.microedition.lcdui 无法解析

我已经安装了 JME SDK 3.4,并且能够运行不导入 javax.microedition.lcdui.* 的 MIDlet。我在某处读到 lcdui 可以从无线工具包中获得;和Oracle says,无线工具包已集成到 JME SDK 3.0+。

那么为什么 Eclipse 找不到呢?

【问题讨论】:

反对者,需要解释一下吗? 【参考方案1】:

好的,我想我现在知道答案了。

我回到Using Sample projects 上的JME SDK 3.4 文档页面,创建并运行了一个UIDemo 实例。它使用 lcdui 类,但运行完美 - 没有关于无法解析 javax.microedition.lcdui.* 的错误。

不同之处似乎在于工作示例使用的库与我最初尝试的库不同。第一个使用 org.elipse.mtj.JavaMEContainer/Oracle Java(TM) Platform Micro Edition SDK 3.4/IMPNGDevice1, 而有效的使用 org.elipse.mtj.JavaMEContainer/Oracle Java(TM) Platform Micro Edition SDK 3.4/JavaMEPhone1。它们包含不同的罐子集,例如工作的包含midp_2.1.jar,而较早的包含impng_1.0.jar

一个后续问题可能是,为什么 IMP-NG 中没有 lcdui?好吧,那些关注自己在做什么的人会有read that

此 JSR [for IMP-NG] 将定义一个 J2ME 配置文件,针对希望支持类似于移动信息设备配置文件 (MIDP) 2.0 版的 Java 运行时环境的嵌入式联网设备,但不提供图形显示功能MIDP 2.0 要求。

信息模块配置文件 - 下一代 (IMP-NG) 将是 MIDP 2.0 的严格子集,其中至少删除了与 GUI 功能 (LCDUI) 相关的 API。 功能尚未出现在 MIDP 2.0 中是不可预期或不希望的。 "

下一个问题可能是,为什么我在阅读本教程时最终选择了 IMP-NG……而我真的想要一个能够以图形方式执行某些操作的 MIDlet?但我不确定我是否在乎,现在它正在工作。

【讨论】:

【参考方案2】:

新的me sdk 8.2,在浏览了所有的类和包后了解到,没有提供任何类来开发用户界面。不像 sdk 3.4,它有很多图形组件。

【讨论】:

以上是关于在 JME SDK 3.0+ 中,lcdui 去了哪里?的主要内容,如果未能解决你的问题,请参考以下文章

在 LWUIT 表单和 LCDUI 表单之间切换

在iPhone 3.0 SDK中改变了渐变技巧?

在 iPhone SDK 3.0 中链接静态库

在 LWUIT 组件上绘制 javax.microedition.lcdui.Graphics

如何在 iPhone SDK 3.0 中使用 Shake API?

无法在 Facebook iOS SDK 3.0 中重现教程示例“Scrumptious”