Firefly开源社区

打印 上一主题 下一主题

Android 编译不过

24

积分

0

威望

0

贡献

游客

积分
24

Android 编译不过

发表于 2015-1-9 17:04:08      浏览:8621 | 回复:7        打印      只看该作者   [复制链接] 楼主
在centos7 X64的系统下编译Android,源码是git里面最新的(按照wiki上的描述进行了更新),
kernel能顺利编译过,但是编译android的时候出现问题,出错信息看不太明白,大家帮帮忙:

Note: Recompile with -Xlint:deprecation for details.
frameworks/base/services/java/com/android/server/ConnectivityService.java:2273: unreachable statement
                if ((newNetType == ConnectivityManager.TYPE_PPPOE) &&
                ^
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 error
100 warnings
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
target Java: WallpaperCropper (out/target/common/obj/APPS/WallpaperCropper_intermediates/classes)
make: *** [out/target/common/obj/JAVA_LIBRARIES/services_intermediates/classes-full-debug.jar] Error 41
make: *** Waiting for unfinished jobs....

十分感谢!

回复

使用道具 举报

741

积分

68

威望

68

贡献

技术大神

Rank: 3Rank: 3

积分
741
QQ
发表于 2015-1-10 10:12:54        只看该作者  沙发
jdk版本多少?
回复

使用道具 举报

279

积分

10

威望

9

贡献

社区版主

Rank: 7Rank: 7Rank: 7

积分
279
QQ
发表于 2015-1-10 10:25:02        只看该作者  板凳
楼主有没有自己添加了*.aidl 文件,如果有需要在framework中的 Android.mk文件中添加上对应文件,再执行以下编译命令:
make update-api
make -j8


如果楼主没有修改过系统代码,是否有将部分代码导入到Eclipse,可能eclipse自己生成了R文件,需要删除再编译
回复

使用道具 举报

24

积分

0

威望

0

贡献

游客

积分
24
发表于 2015-1-12 09:48:16        只看该作者  地板
本帖最后由 wuxunliang 于 2015-1-12 09:49 编辑

jdk  版本是:
java version "1.6.0_45"

环境变量的设定是:
  1. JAVA_HOME=/usr/java/latest
  2. JRE_HOME=${JAVA_HOME}/jre
  3. CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
  4. export JAVA_HOME JRE_HOME CLASSPATH
复制代码

回复

使用道具 举报

24

积分

0

威望

0

贡献

游客

积分
24
发表于 2015-1-12 09:49:29        只看该作者  5#
ZZP 发表于 2015-1-10 10:25
楼主有没有自己添加了*.aidl 文件,如果有需要在framework中的 Android.mk文件中添加上对应文件,再执行以 ...

我没有修改过代码,第一次编译.
是直接在centos的命令行下执行的.
回复

使用道具 举报

24

积分

0

威望

0

贡献

游客

积分
24
发表于 2015-1-12 09:55:56        只看该作者  6#
wuxunliang 发表于 2015-1-12 09:49
我没有修改过代码,第一次编译.
是直接在centos的命令行下执行的.

我检查了一下,确实有一个文件改过
ConnectivityService.java 这个文件中我注释了几句代码.
但是执行 make update-api 后还是不行.

我先把文件还原编译试试看.
回复

使用道具 举报

152

积分

0

威望

6

贡献

技术小白

积分
152
发表于 2015-1-12 10:41:35        只看该作者  7#
其实楼主贴的代码并没有出错行的信息,因为你用的是 -j8 来编译的,请重新用:
make -j1

然后再贴一下出错行。
回复

使用道具 举报

24

积分

0

威望

0

贡献

游客

积分
24
发表于 2015-1-12 14:41:02        只看该作者  8#
我恢复我改的之后编译就ok了.
发现应该是我修改的代码的问题,我就在一个函数中加了一个return,感觉就是导致后面的代码不会执行了,所以编译的时候提示
unreachable statement
然后就编译不过,可能是java 编译的特性吧,先不研究了. 谢谢大家的帮助!

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表