android编程找不到类求助!

dclchj 2012-02-02 04:41:37
大家好!

先看出错提示吧(编译过,运行时出错)
02-02 08:07:27.485: E/dalvikvm(1598): Could not find class 'java.awt.Dimension', referenced from method org.apache.poi.hslf.usermodel.SlideShow.getPageSize

环境:虚拟设备 Android2.3.3
XP 下 Eclipse 调试

详细:
我想在Android上播放PPT,上次论坛问后知道用POI库可以搞定,所以就下载来去做了。

然后我在网上找到了相应代码,原来是JAVA代码,可以提取出 PPT 中的图片并保存为JPG。我新建JAVA工程用这段代码加导入对就的POI的JAR后,成功了。

最后我把代码复制到 Android 工程中,编译也过了。但是安装到AVD中运行后,出错了。一大堆,第一个error就是开始给出的那个log。后面还有好几条也是找不到 java.awt.** 类有关的。

I DO:
我上网找来 Dimension 类导入工程,但这个类又调用了其它 java.awt包中的类,有的还是C类。所以不知道怎么办了。

各个前辈这个问题怎么办啊?
...全文
648 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
dclchj 2012-02-03
  • 打赏
  • 举报
回复
开个新帖吧,问题暂时没解决:http://topic.csdn.net/u/20120203/11/a129458f-1c9c-4989-8b94-1c91991bcff7.html
dclchj 2012-02-03
  • 打赏
  • 举报
回复
谢谢LS几位!
确实像4楼说的,Android中没有这个包了。然后我按1楼的方法,在Android工程的属性/JAVA Build Path 中加了JRE SYSTEM LIBRARY(JDK1.7.0_01)。
然后在项目中导入 import java.awt.Dimension; 编译通过,说明可以导入这个类,只不过提示没有使用的类(这个类是导入的POI类库中有使用)。

可是最后运行时,LOG 提示还是一样的错。
现照二楼要求复制下log:
02-03 00:43:35.533: E/dalvikvm(371): Could not find class 'java.awt.Dimension', referenced from method org.apache.poi.hslf.usermodel.SlideShow.getPageSize
02-03 00:43:35.533: W/dalvikvm(371): VFY: unable to resolve new-instance 28 (Ljava/awt/Dimension;) in Lorg/apache/poi/hslf/usermodel/SlideShow;
02-03 00:43:35.543: D/dalvikvm(371): VFY: replacing opcode 0x22 at 0x0018
02-03 00:43:35.543: D/dalvikvm(371): VFY: dead code 0x001a-001d in Lorg/apache/poi/hslf/usermodel/SlideShow;.getPageSize ()Ljava/awt/Dimension;
02-03 00:43:35.573: W/dalvikvm(371): VFY: unable to find class referenced in signature (Ljava/awt/Dimension;)
02-03 00:43:35.573: W/dalvikvm(371): VFY: unable to resolve instance field 9
02-03 00:43:35.583: D/dalvikvm(371): VFY: replacing opcode 0x52 at 0x0006
02-03 00:43:35.583: D/dalvikvm(371): VFY: dead code 0x0008-001a in Lorg/apache/poi/hslf/usermodel/SlideShow;.setPageSize (Ljava/awt/Dimension;)V
02-03 00:43:35.643: W/dalvikvm(371): VFY: unable to find class referenced in signature (Ljava/awt/Color;)
02-03 00:43:35.643: W/dalvikvm(371): VFY: unable to find class referenced in signature (Ljava/awt/Color;)
02-03 00:43:35.666: E/dalvikvm(371): Could not find class 'java.awt.Color', referenced from method org.apache.poi.hslf.usermodel.RichTextRun.getBulletColor
02-03 00:43:35.683: E/dalvikvm(371): Could not find class 'java.awt.Color', 02-03 00:43:35.713: E/dalvikvm(371): Could not find class 'java.awt.Color', 02-03 00:43:35.723: E/dalvikvm(371): Could not find class 'java.awt.Color', referenced from method org.apache.poi.hslf.usermodel.RichTextRun.setFontColor
02-03 00:43:37.453: E/dalvikvm-heap(371): Out of memory on a 489889-byte allocation.
02-03 00:43:37.584: E/AndroidRuntime(371): FATAL EXCEPTION: main
02-03 00:43:37.584: E/AndroidRuntime(371): java.lang.OutOfMemoryError
02-03 00:43:37.584: E/AndroidRuntime(371): at org.apache.poi.hslf.HSLFSlideShow.readPictures(HSLFSlideShow.java:380)
02-03 00:43:37.584: E/AndroidRuntime(371): at org.apache.poi.hslf.HSLFSlideShow.getPictures(HSLFSlideShow.java:598)
02-03 00:43:37.584: E/AndroidRuntime(371): at org.apache.poi.hslf.usermodel.SlideShow.getPictureData(SlideShow.java:476)
02-03 00:43:37.584: E/AndroidRuntime(371): at com.dclchj.android.PptActivity.OutPutPicture(PptActivity.java:44)
02-03 00:43:37.584: E/AndroidRuntime(371): at com.dclchj.android.PptActivity.onCreate(PptActivity.java:29)
02-03 00:43:37.584: E/AndroidRuntime(371): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
02-03 00:43:37.584: E/AndroidRuntime(371): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
02-03 00:43:37.584: E/AndroidRuntime(371): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
02-03 00:43:37.584: E/AndroidRuntime(371): at android.app.ActivityThread.access$1500(ActivityThread.java:117)
02-03 00:43:37.584: E/AndroidRuntime(371): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
02-03 00:43:37.584: E/AndroidRuntime(371): at android.os.Handler.dispatchMessage(Handler.java:99)
02-03 00:43:37.584: E/AndroidRuntime(371): at android.os.Looper.loop(Looper.java:123)
02-03 00:43:37.584: E/AndroidRuntime(371): at android.app.ActivityThread.main(ActivityThread.java:3683)
02-03 00:43:37.584: E/AndroidRuntime(371): at java.lang.reflect.Method.invokeNative(Native Method)
02-03 00:43:37.584: E/AndroidRuntime(371): at java.lang.reflect.Method.invoke(Method.java:507)
02-03 00:43:37.584: E/AndroidRuntime(371): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
02-03 00:43:37.584: E/AndroidRuntime(371): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
02-03 00:43:37.584: E/AndroidRuntime(371): at dalvik.system.NativeStart.main(Native Method)
02-03 00:48:37.703: I/Process(371): Sending signal. PID: 371 SIG: 9

[Quote=引用 4 楼 hen_hen_hen_hen 的回复:]
在Android中已经没有java.awt这个包了。
话说你用来做什么?都不是Java那种编写界面的方法了。
[/Quote]
[Quote=引用 3 楼 aomandeshangxiao 的回复:]
引用 1 楼 wlianghe00 的回复:
'java.awt.Dimension' 这个类是jdk自带的啊,把外面拷的都删了重新编译一下,
还有配一下Eclipse的jre,jdk
按照楼上的楼主再做下试试。。。
[/Quote]
[Quote=引用 2 楼 scliu0718 的回复:]
你看看最后一个错是什么?把它贴出来
[/Quote]
[Quote=引用 1 楼 wlianghe00 的回复:]
'java.awt.Dimension' 这个类是jdk自带的啊,把外面拷的都删了重新编译一下,
还有配一下Eclipse的jre,jdk
[/Quote]
hen_hen_hen_hen 2012-02-02
  • 打赏
  • 举报
回复
在Android中已经没有java.awt这个包了。
话说你用来做什么?都不是Java那种编写界面的方法了。
傲慢的上校 2012-02-02
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wlianghe00 的回复:]
'java.awt.Dimension' 这个类是jdk自带的啊,把外面拷的都删了重新编译一下,
还有配一下Eclipse的jre,jdk
[/Quote]按照楼上的楼主再做下试试。。。
逐Ls梦 2012-02-02
  • 打赏
  • 举报
回复
你看看最后一个错是什么?把它贴出来
Utopia 2012-02-02
  • 打赏
  • 举报
回复
'java.awt.Dimension' 这个类是jdk自带的啊,把外面拷的都删了重新编译一下,
还有配一下Eclipse的jre,jdk

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧