安卓使故障在Ubuntu [英] Android make failure on ubuntu

查看:132
本文介绍了安卓使故障在Ubuntu的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

试图在Ubuntu 10.04(在VMware播放器)构建Android开源项目。

我遵循此链接的指令(和它说用太阳Java5中JDK 1.5这需要一些渔船发现的Ubuntu) -

得到299编译错误。想知道如果方向使用JDK 1.5已经过时?一些错误如下(以及许多类似的) -

 外部/ jsilver / src目录/ COM /谷歌/ clearsilver / jsilver /数据/ HDFDataFactory.java:77:方法不能从超类重载的方法
  @覆盖

外部/ jsilver / src目录/ COM /谷歌/ clearsilver / jsilver /数据/ UniqueStack.java:106:找不到符号
符号:方法offerLast(T)
位置:类java.util.LinkedList中的< T>
    objectStack.offerLast(对象);


外部/ jsilver / src目录/ COM /谷歌/ streamhtmlparser / IMPL / HtmlParserImpl.java:507:找不到符号
符号:方法的isEmpty()
位置:类java.lang.String
    如果(tagString.isEmpty()及!&安培; tagString.charAt(0)=='/'){


外部/ jsilver / src目录/ COM /谷歌/ streamhtmlparser / UTIL / JavascriptTokenBuffer.java:80:找不到符号
符号:方法copyOf(的char [],INT)
位置:类java.util.Arrays中
    缓冲区= Arrays.copyOf(aJavascriptTokenBuffer.buffer,
 

解决方案

感谢您的意见和建议。

结论 - 我没有得到一个成功的构建与Sun JDK 1.6。花了7或8的尝试和做使干净的每一次很重要的。

请注意的问题显示的错误上面是分别加入的Java 1.6的Java方法 - 这样的Andr​​oid源需要Java 1.6,现在在主源科(见本线程德国链接),即使方向说使用Java 1.5。它没有试图做一个64位版本,由于C库的依赖。我用下面的链接,需要做一个小的变化,以4 make文件,以便它可以做一个32位版本(生成文件都设置做,如果你使用的是Java 1.6由于某种原因,一个64位版本)推荐的解决方案。

请参阅溶胶2用户amberved在此链接 - 这是什么工作对我来说。

在回答上述问题发表看法 - 嗯,我想我有32位Ubu​​ntu的(我怎么知道?)。系统是在VMware上运行Ubuntu的在32位Vista系统上运行。关于有必要在64位编译使用的Java6我的编辑到引用的makefile解决办法的32位版本。

我想的uname将报告类似i686_64 Linux是否是64位操作系统?

的uname -a Linux的jotobjects-Ubuntu的2.6.32-21泛型#32 Ubuntu的SMP周五4月16日8时10分零二秒UTC 2010 i686的GNU / Linux的

Trying to build Android open source project on Ubuntu 10.04 (on VMware Player).

I followed the instructions at this link (and it said to use sun-java5 JDK 1.5 which takes some fishing to find for Ubuntu) -

Got 299 compile errors. Wondering if the direction to use JDK 1.5 is out of date? Some of the errors are as follows (and many similar) -

external/jsilver/src/com/google/clearsilver/jsilver/data/HDFDataFactory.java:77: method does not override a method from its superclass
  @Override

external/jsilver/src/com/google/clearsilver/jsilver/data/UniqueStack.java:106: cannot find symbol
symbol  : method offerLast(T)
location: class java.util.LinkedList<T>
    objectStack.offerLast(object);


external/jsilver/src/com/google/streamhtmlparser/impl/HtmlParserImpl.java:507: cannot find symbol
symbol  : method isEmpty()
location: class java.lang.String
    if (!tagString.isEmpty() && tagString.charAt(0) == '/') {


external/jsilver/src/com/google/streamhtmlparser/util/JavascriptTokenBuffer.java:80: cannot find symbol
symbol  : method copyOf(char[],int)
location: class java.util.Arrays
    buffer = Arrays.copyOf(aJavascriptTokenBuffer.buffer,

解决方案

Thanks for comments and suggestions.

Conclusion - I did get a successful build with Sun JDK 1.6. It took 7 or 8 attempts and doing "make clean" every time was important.

Note the errors shown in the question above are for java methods that were added in Java 1.6 - so the Android source requires Java 1.6 now on the master source branch (see link from German in this thread) even though the directions say to use Java 1.5. It failed trying to do a 64 bit build due to C library dependencies. I used the suggested solution in the following link that required making a small change to 4 make files so it could do a 32 bit build (the makefiles are set up to do a 64 bit build if you are using Java 1.6 for some reason).

See "sol 2" by user amberved at this link - that is what worked for me.

In answer to the above comment questions - um I think I have 32bit Ubuntu (how do I tell?). System is Ubuntu running on VMware running on 32bit Vista system. Regarding "necessary to compile in 64bit with java6" my edits to the referenced makefiles is the workaround for 32bit build.

I think uname would report something like i686_64 if Linux was 64 bit OS?

uname -a Linux jotobjects-ubuntu 2.6.32-21-generic #32-Ubuntu SMP Fri Apr 16 08:10:02 UTC 2010 i686 GNU/Linux

这篇关于安卓使故障在Ubuntu的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆