当执行android时,error,要求指定swt.jar时,借这个问题,做了一些分析。
一.SWT是什么?
SWT-"Standard Widget Toolkit",它是一个Java平台下开放源码的Native GUI组件库,也是Eclipse平台的UI组件之一.
执行android,和DDMS时,会调用该包,ddms和sdk管理器的界面应该都是基于该包开发的。
二. android搜索swt.jar的路径。
使用gedit打开android,可知android会搜索多个目录。
1)根据ANDROID_SWT变量搜索相应路径
2)如果是sdk目录,则查询tools/lib目录下的swt.jar,
3)如果是源码,分为两种情况
如果配置了ANDROID_BUILD_TOP变量,则搜索/prebuilt/系统名/swt,如/prebuilt/linux-x86_64/swt
如果没有配置ANDROID_BUILD_TOP变量,则搜索out/host/linux-x86/framework/linux-x86_64/swt
配置ANDROID_BUILD_TOP指定android源码目录即可。
三. 解决办法
最终,由于我在源码基础上分析的,在.bashrc中增加了ANDROID_BUILD_TOP变量即可。
注意:
配置环境变量时,需要加上EXPORT 否则不能生效