我在其他论坛上发现了一些相同的错误,但尚未找到解决此问题的答案。
在我新安装的 Ubuntu 12.10 上运行,
out/target/common/obj/PACKAGING/public_api.txt:22097: error 12: Class
android.telephony.gsm.SmsMessage changed static qualifier
prebuilts/sdk/api/18.txt:22054: error 9: Removed public constructor SmsMessage()
prebuilts/sdk/api/18.txt:22055: error 9: Removed public method
android.telephony.gsm.SmsMessage.calculateLength
prebuilts/sdk/api/18.txt:22056: error 9: Removed public method
android.telephony.gsm.SmsMessage.calculateLength
prebuilts/sdk/api/18.txt:22057: error 9: Removed public method
android.telephony.gsm.SmsMessage.createFromPdu
prebuilts/sdk/api/18.txt:22058: error 9: Removed public method
android.telephony.gsm.SmsMessage.getDisplayMessageBody
prebuilts/sdk/api/18.txt:22059: error 9: Removed public method
android.telephony.gsm.SmsMessage.getDisplayOriginatingAddress
prebuilts/sdk/api/18.txt:22060: error 9: Removed public method
android.telephony.gsm.SmsMessage.getEmailBody
prebuilts/sdk/api/18.txt:22061: error 9: Removed public method
android.telephony.gsm.SmsMessage.getEmailFrom
..
..
..
很明显gsm.SmsMessage的搭建环境存在未知问题。
我尝试将我的 java 版本从 1.7 切换到 1.6。但是还是不行。
有谁知道如何解决这个问题?
谢谢
最佳答案
在我的情况下,问题是由 javadoc
引起的。从 OpenJDK7 开始,我应该使用 JDK6 (Oracle)。
目前,构建Android的master分支需要JDK7,通过Kitkat(4.4.4)构建Gingerbread(2.3)需要JDK6。
如果您有多个 JDK,请确保为 java/javac/javadoc 选择正确的一个。您可以使用以下命令:
$ sudo update-alternatives --config java<br/>
$ sudo update-alternatives --config javac<br/>
$ sudo update-alternatives --config javadoc
选择 java
的输出示例(上面的第一个命令):
There are 3 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1051 auto mode * 1 /usr/lib/jvm/java-6-oracle/jre/bin/java 1 manual mode 3 /usr/lib/jvm/java-7-oracle/jre/bin/java 2 manual mode Press enter to keep the current choice[*], or type selection number:
关于Android 4.3 构建错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18777479/