Java AWT-使用J2ME和J9时的BuffereImage问题
我正在尝试在AWT中使用BuffereImage类。我正在IBM的J9虚拟机上使用J2ME 当我尝试调用BufferedImge.getRastor()方法时,会出现以下异常:Java AWT-使用J2ME和J9时的BuffereImage问题,java,exception,awt,Java,Exception,Awt,我正在尝试在AWT中使用BuffereImage类。我正在IBM的J9虚拟机上使用J2ME 当我尝试调用BufferedImge.getRastor()方法时,会出现以下异常: Exception in thread "main" java.lang.NoSuchMethodError: java/awt/image/BufferedImage.getRastor()Ljava/awt/image/WritableRaster; 现在,从我对JVM的了解来看,这个错误基本上告诉我Buffere
Exception in thread "main" java.lang.NoSuchMethodError: java/awt/image/BufferedImage.getRastor()Ljava/awt/image/WritableRaster;
现在,从我对JVM的了解来看,这个错误基本上告诉我BuffereImage类没有一个名为getRastor()的方法返回一个WritableRaster对象,但是这个方法在API中有文档记录,它来自版本1.4.2,因此应该与J2ME兼容
我不知道这里发生了什么,你能帮忙吗
干杯
皮特我认为这不是你的答案。。。但既然你引用了你的例外,我想你是剪切粘贴了它,我会尽力帮助你的 方法不是:
getRaster
不是
?
(很抱歉,如果这不是您的问题所在……您将无法在J2ME中使用AWT中的任何内容,因为它不受支持 这是因为J2ME没有AWT。AWT用于桌面应用程序(JavaSE),具有不同的用户模型和功能 您可以看看J2ME文档
J2ME在GUI方面使用了不同的方法,您可以使用高级抽象API(表单)和低级API(画布)。公认的答案不正确(截至2009-08-05)。具体使用哪种API取决于您部署的配置和概要文件组合。但是,您确实需要参考J2ME文档,了解哪些1.4类和成员受到支持 将CDC1.0与Personal Profile 1.1结合使用,您可以获得JavaSE1.4的精简版。PersonalProfile1.0是一个精简版JavaSE1.3。两者都有相当完整的AWT实现(不过没有Swing)
实际上,我们在掌上/PDA设备上使用J9的CDC/PP非常成功。对不起,我从运行代码的PDA上复制了错误消息(很糟糕!)。我已经检查了两次,我确实调用了.getRaster()(所以这不是问题所在),这非常令人困惑-我可以成功地执行使用java.awt.Image和java.awt.Frame(以及更多!)的代码,那么为什么支持它们而不支持BuffereImage呢?可能是因为您的IDE在类路径上有JavaSE。我不确定。:/你在用什么?太阳的无线工具包?还是一些专有的工具包?您能在实际设备上成功运行此代码吗?
getRastor