Java Android Studio 3.0运行时异常

Java Android Studio 3.0运行时异常,java,android,android-studio,Java,Android,Android Studio,我已经在VirtualBox操作系统Lubuntu上安装了Android Studio 3.0 在制作项目时,有一个例外情况: Error:java.util.concurrent.ExecutionException: java.lang.RuntimeException: No server to serve request. Check logs for details. Error:Execution failed for task ':app:mergeDebugResources'

我已经在VirtualBox操作系统Lubuntu上安装了Android Studio 3.0

在制作项目时,有一个例外情况:

Error:java.util.concurrent.ExecutionException: java.lang.RuntimeException: No server to serve request. Check logs for details.

Error:Execution failed for task ':app:mergeDebugResources'. 
Error: java.util.concurrent.ExecutionException: java.lang.RuntimeException: No server to serve request. Check logs for details.

我试过oracle-jdk8和OpenJdk。同样的问题

不太确定您的编译问题是什么,但不管您是否已经解决了这个问题,都很可能会遇到无法使用VirtualBox运行Android Studio emulator的问题。假设你想运行模拟器,我的观点是,你可能在浪费时间试图解决你的问题。请参阅下面的旧帖子


最好在您的主机上运行Android Studio。

不太确定编译问题是什么,但不管您是否已经解决了这个问题,都很可能会遇到无法使用VirtualBox运行Android Studio emulator的问题。假设你想运行模拟器,我的观点是,你可能在浪费时间试图解决你的问题。请参阅下面的旧帖子


最好在主机上运行Android Studio。

我已经找到了根本原因:错误消息意味着Gradle无法连接到某些工作进程。在我的例子中,这个过程是针对“aapt2”的。运行“ldd aapt2”表明缺少一些共享库(主要是GLIBC)。因为我使用的是基于Alpine Linux的Docker,所以它附带了一个简化的GLIBC(GLIBC musl)。解决方案是简单地安装glibc

以下是完整的Dockerfile供参考,尽管缺少的库可能与您的发行版不同

FROM openjdk:8-alpine

LABEL maintainer="Barry Lagerweij" \
  maintainer.email="b.lagerweij@carepay.co.ke" \
  description="Android Builder"

COPY android-packages /tmp/android-packages
RUN apk add --no-cache wget unzip ca-certificates \
  && wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://raw.githubusercontent.com/sgerrand/alpine-pkg-glibc/master/sgerrand.rsa.pub \
  && wget -q -O /tmp/glibc.apk https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.26-r0/glibc-2.26-r0.apk \
  && wget -q -O /tmp/glibc-bin.apk https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.26-r0/glibc-bin-2.26-r0.apk \
  && apk add --no-cache /tmp/glibc.apk /tmp/glibc-bin.apk \
  && wget -q -O /tmp/android-tools.zip https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip \
  && mkdir -p /tmp/android-sdk/licenses \
  && unzip /tmp/android-tools.zip -d /tmp/android-sdk \
  && rm /tmp/android-tools.zip \
  && echo "d56f5187479451eabf01fb78af6dfcb131a6481e" > /tmp/android-sdk/licenses/android-sdk-license \
  && echo "84831b9409646a918e30573bab4c9c91346d8abd" > /tmp/android-sdk/licenses/android-sdk-preview-license \
  && echo "d975f751698a77b662f1254ddbeed3901e976f5a" > /tmp/android-sdk/licenses/intel-android-extra-license \
  && mkdir ~/.android; echo "count=0" >> ~/.android/repositories.cfg \
  && /tmp/android-sdk/tools/bin/sdkmanager --package_file=/tmp/android-packages \
  && apk del wget unzip ca-certificates \
  && rm -rf /tmp/android-sdk/extras /tmp/android-sdk/tools/lib/x86 /tmp/android-sdk/tools/lib/monitor-* /tmp/glibc.apk /tmp/glibc-bin.apk /etc/apk/keys/sgerrand.rsa.pub

RUN mkdir /tmp/project \
  && echo "sdk.dir=/tmp/android-sdk" > /tmp/project/local.properties
ENV ANDROID_HOME /tmp/android-sdk
WORKDIR /tmp/project

我建议您运行'ldd build tools/26.0.2/aapt2'以查看操作系统中缺少哪些库。

我已经找到了根本原因:错误消息意味着Gradle无法连接到某些工作进程。在我的例子中,这个过程是针对“aapt2”的。运行“ldd aapt2”表明缺少一些共享库(主要是GLIBC)。因为我使用的是基于Alpine Linux的Docker,所以它附带了一个简化的GLIBC(GLIBC musl)。解决方案是简单地安装glibc

以下是完整的Dockerfile供参考,尽管缺少的库可能与您的发行版不同

FROM openjdk:8-alpine

LABEL maintainer="Barry Lagerweij" \
  maintainer.email="b.lagerweij@carepay.co.ke" \
  description="Android Builder"

COPY android-packages /tmp/android-packages
RUN apk add --no-cache wget unzip ca-certificates \
  && wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://raw.githubusercontent.com/sgerrand/alpine-pkg-glibc/master/sgerrand.rsa.pub \
  && wget -q -O /tmp/glibc.apk https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.26-r0/glibc-2.26-r0.apk \
  && wget -q -O /tmp/glibc-bin.apk https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.26-r0/glibc-bin-2.26-r0.apk \
  && apk add --no-cache /tmp/glibc.apk /tmp/glibc-bin.apk \
  && wget -q -O /tmp/android-tools.zip https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip \
  && mkdir -p /tmp/android-sdk/licenses \
  && unzip /tmp/android-tools.zip -d /tmp/android-sdk \
  && rm /tmp/android-tools.zip \
  && echo "d56f5187479451eabf01fb78af6dfcb131a6481e" > /tmp/android-sdk/licenses/android-sdk-license \
  && echo "84831b9409646a918e30573bab4c9c91346d8abd" > /tmp/android-sdk/licenses/android-sdk-preview-license \
  && echo "d975f751698a77b662f1254ddbeed3901e976f5a" > /tmp/android-sdk/licenses/intel-android-extra-license \
  && mkdir ~/.android; echo "count=0" >> ~/.android/repositories.cfg \
  && /tmp/android-sdk/tools/bin/sdkmanager --package_file=/tmp/android-packages \
  && apk del wget unzip ca-certificates \
  && rm -rf /tmp/android-sdk/extras /tmp/android-sdk/tools/lib/x86 /tmp/android-sdk/tools/lib/monitor-* /tmp/glibc.apk /tmp/glibc-bin.apk /etc/apk/keys/sgerrand.rsa.pub

RUN mkdir /tmp/project \
  && echo "sdk.dir=/tmp/android-sdk" > /tmp/project/local.properties
ENV ANDROID_HOME /tmp/android-sdk
WORKDIR /tmp/project

我建议您运行'ldd build tools/26.0.2/aapt2'以查看操作系统中缺少哪些库。

我在lubuntu-32位上遇到了这个问题。最简单的解决方案是使用lubuntu-64位。

我在lubuntu-32位上遇到了这个问题。最简单的解决方案是使用lubuntu-64位。

我建议您编辑您的问题并发布整个Gradle控制台输出,而不仅仅是这两行。也许可以在这里尝试,也许问题不在于lubuntu和VM。我在使用Docker构建项目时遇到过同样的问题,我建议你编辑你的问题并发布整个Gradle控制台输出,而不仅仅是这两行。也许在这里试试也许问题不在于lubuntu和VM。我在使用Docker构建项目时遇到了同样的问题,这是我osx中的输出,我如何找到缺少的库@blagerweij/libc++.dylib(兼容版本0.0.0,当前版本0.0.0)/usr/lib/libz.1.dylib(兼容版本1.0.0,当前版本1.2.5)/usr/lib/libSystem.B.dylib(兼容版本1.0.0,当前版本1213.0.0)这是我的osx中的输出,我如何找到缺少的库@blagerweij/libc++.dylib(兼容版本0.0.0,当前版本0.0.0)/usr/lib/libz.1.dylib(兼容版本1.0.0,当前版本1.2.5)/usr/lib/libSystem.B.dylib(兼容版本1.0.0,当前版本1213.0.0)