我刚刚将我的工具链从Ubuntu MATE 16.04 + Eclipse Luna + ADT升级到Ubuntu MATE 18.04 + Eclipse Oxygen + Andmore。
我converted我现有的基于ADT的Android项目之一,并尝试构建它。但是,我收到以下错误消息:
Errors occurred during the build.
Errors running builder 'Android Package Builder' on project 'qz'.
sun/misc/BASE64Encoder
我做了一些研究并得到了一些指示但没有最终解决方案。
Here是关于类似错误消息的问题;唯一的答案和其中一条评论表明它与Java 9中不推荐使用的类有关,决定因素是Eclipse运行的JVM(而不是应用程序的目标JVM)。
Eclipse社区论坛上的This post也提到了JRE 8并显示了它的配置设置。
当我去窗口>偏好>已安装的JRE ,我看到/usr/lib/jvm/java-8-openjdk-amd64
的一个条目,根据上面引用的答案应该是正确的。
为了完整性,Ubuntu 18.04似乎带有两个Java版本,命令行上的java -version
给了我:
openjdk version "10.0.1" 2018-04-17
OpenJDK Runtime Environment (build 10.0.1+10-Ubuntu-3ubuntu1)
OpenJDK 64-Bit Server VM (build 10.0.1+10-Ubuntu-3ubuntu1, mixed mode)
最重要的是,我注意到在我的工作区树中,-metadata/.plugins/org.eclipse.andmore.android.logger/environment.log
有:
2018-05-03 20:06:03,654 - os.name - Linux
2018-05-03 20:06:03,655 - os.arch - amd64
2018-05-03 20:06:03,655 - os.version - 4.15.0-20-generic
2018-05-03 20:06:03,655 - java.version - 10.0.1
2018-05-03 20:06:03,655 - java.vendor - Oracle Corporation
2018-05-03 20:06:03,655 - java.vendor.url - http://java.oracle.com/
2018-05-03 20:06:03,655 - java.home - /usr/lib/jvm/java-11-openjdk-amd64
2018-05-03 20:06:03,655 - java.vm.specification.name - Java Virtual Machine Specification
2018-05-03 20:06:03,655 - java.vm.specification.vendor - Oracle Corporation
2018-05-03 20:06:03,655 - java.vm.specification.version - 10
显然,Andmore正在OpenJDK 10(我系统上的默认JRE)上运行,而不是为Eclipse选择的那个。
我该如何解决这个问题?
答案 0 :(得分:0)
查看eclipse.ini
(在我的Eclipse路径中),我找到了对JRE 11的明确引用:
-vm
/usr/lib/jvm/java-11-openjdk-amd64/bin
我改变之后
-vm
/usr/lib/jvm/java-8-openjdk-amd64/bin
我终于得到了一个APK,在清理了一次项目之后,我就可以将它安装在设备上了。