Gradle에게 다른 위치에서 Java를 사용하도록 지시하는 방법은 무엇입니까?


9

Android Studio에서 테스트 앱을 빌드 한 다음 이벤트 로그에서 다음과 같이 말했습니다.

Android Studio는이 JDK 위치를 사용합니다. C : \ Program Files \ Android \ Android Studio \ jre는 Gradle이 기본적으로 사용하는 것과 다릅니다. C : \ Program Files (x86) \ Java \ jdk1.8.0_181 다른 위치를 사용하면 생성 될 수 있습니다 Android Studio를 사용하는 동안 Gradle 작업이 명령 줄에서 실행되는 경우 여러 Gradle 데몬

그런 다음 다음 옵션을 제공하십시오.

  1. 더 많은 정보...
  2. Gradle 및 동기화와 동일한 JDK를 사용하도록 Android Studio 설정
  3. 이 경고를 다시 표시하지 마십시오

나는 클릭했다 :

Gradle 및 동기화와 동일한 JDK를 사용하도록 Android Studio 설정

그런 다음 내 앱은 더 이상 빌드하고 싶지 않았습니다.

이것은 오류입니다 :

Gradle 동기화 실패 : 데몬 프로세스를 시작할 수 없습니다.
이 문제점은 디먼의 올바르지 않은 구성으로 인해 발생할 수 있습니다.

예를 들어 인식 할 수없는 jvm 옵션이 사용됩니다. https://docs.gradle.org/5.4.1/userguide/gradle_daemon.html
의 데몬에 대한 사용 설명서 장을 참조하십시오.

프로세스 명령 행 : C : \ Program Files (x86) \ Java \ jdk1.8.0_181 \ bin \ java.exe -Xmx1536m -Dfile.encoding = windows-1252 -Duser.country = ZA -Duser.language = en -Duser. 변형 -cp C : \ Users \ {MyUserName} \. gradle \ wrapper \ dists \ gradle-5.4.1-all \ 3221gyojl5jsh0helicew7rwx \ gradle-5.4.1 \ lib \ gradle-launcher-5.4.1.jar org.gradle. launcher.daemon.bootstrap.GradleDaemon 5.4.1

자세한 내용은 다음 프로세스 출력을 읽으십시오.

VM을 초기화하는 동안 오류가 발생했습니다. 1572864KB 개체 힙에 충분한 공간을 예약 할 수 없습니다. 자세한 내용은 IDE 로그를 참조하십시오 (도움말 | 로그 표시) (16 초 166ms)

이벤트 로그를 확인했습니다.

나는 이전에 이것을했다고 생각한다.

C : / Program Files / Android / Android Studio / jre에서 java를 사용하도록 gradle에 지시

이제는 이렇게 말합니다.

C : / Program Files (x86) /Java/jdk1.8.0_181에서 java를 사용하도록 gradle에 지시

앱을 다시 빌드 할 수 있도록 원래 상태로 다시 설정하려면 어떻게합니까?

모든 도움 / 조언을 부탁드립니다

답변:


2

파일, 프로젝트 구조, SDK 위치로 이동하여 JDK 위치 드롭 다운을 JAVA_HOME으로 변경하십시오.

Androdi Studio 3.6 베타의 프로젝트 구조


1
그런 다음 내 질문과 같은 오류가 발생했습니다. 64 비트 Windows를 사용하고 있습니다.
시아 스 사마

1

환경 변수를 변경 / 추가해야합니다.

환경 변수를 변경 / 추가하는 방법을 알려면 이 링크 를 따르십시오 .

이제 변수 'JAVA_HOME'을 추가 / 수정하고 경로를 C:\Program Files\Android\Android Studio\jre

참고 : 나중에 다른 IDE에서 다른 Java 프로젝트를 작업 할 때이 변수를 기본 Java 위치 (이 경우 아마도 C:/Program Files (x86)/Java/jdk1.8.0_181)로 다시 변경해야 할 수도 있습니다.


0

Gradle은 Oracle의 기본 Java 설치를 분명히 사용하는 반면 Android Studio는 자체 버전을 사용합니다.

Android Studio를 3.6.1로 업그레이드 한 이후이 경고를 무시했습니다. 지금까지 문제가 없습니다. 실제로 문제없이 새로운 버전의 앱을 출시했습니다.

이것이 성 가시고 다른 문제가없는 경우 향후 경고를 무시하는 옵션이 있습니다. 경고를 누르고 옵션을 선택하여이 경고와 관련된 향후 메시지를 무시하십시오.


0

우분투 16.04 LTS, 안드로이드 스튜디오 3.6

이것이 내가 경고를 없애는 방법입니다.

1) studio.sh컴퓨터 에서 AS 런처 스크립트 를 찾으십시오 . 광산이 아래에 있습니다 /opt/android-studio-3.x/bin
.2) 스크립트 안에 다음 줄이 있습니다.

# ---------------------------------------------------------------------
# Locate a JDK installation directory which will be used to run the IDE.
# Try (in order): STUDIO_JDK, studio.jdk, ./jre64, JDK_HOME, JAVA_HOME, "java" in PATH.
# ---------------------------------------------------------------------
if [ -n "$STUDIO_JDK" -a -x "$STUDIO_JDK/bin/java" ]; then
  JDK="$STUDIO_JDK"
fi

if [ -z "$JDK" -a -s "$HOME/.AndroidStudio3.6/config/studio.jdk" ]; then
  USER_JRE=`"$CAT" $HOME/.AndroidStudio3.6/config/studio.jdk`
...

3) 어떤 이유로 환경 변수를 시작 프로그램으로 내보낼 수없는 경우 (xfce4 세션에서 발생하는 것처럼) 내 시스템의 위치에 JAVA_HOME따라 studio.jdk파일에 원하는 값을 쓸 수 있습니다 스크립트는입니다 $HOME/.AndroidStudio3.6/config/studio.jdk.

$ echo $JAVA_HOME > $HOME/.AndroidStudio3.6/config/studio.jdk
$ cat $HOME/.AndroidStudio3.6/config/studio.jdk
/usr/lib/jvm/java-8-oracle

4) 마지막으로 DE 세션에서 AS를 다시 시작 JAVA_HOME하면 파일-> 프로젝트 구조-> SDK 위치 창 아래에 위의 값으로 설정되어 있으며 AS와 gradle은 동일한 JRE를 사용해야합니다.

프로젝트 구조 창


-1

안드로이드 스튜디오에서 나는 :

파일> 프로젝트 구조 ...> SDK 위치 (왼쪽 창)

그런 다음 맨 아래에 JDK 위치 아래에 드롭 다운이 있습니다 .

그런 다음이 디렉토리를 선택 / 탐색했습니다.

C : \ Program Files \ Java \ jdk1.8.0_181

그 후 Gradle Sync가 다시 작동했지만 여전히이 경고가 나타납니다.

안드로이드 스튜디오이 JDK 위치를 사용한다 : C : \ 프로그램 파일 \ 자바 \ jdk1.8.0_181을 기본적으로 무엇을 Gradle을 사용하는 서로 다른 인 : C : \ Program 파일 (x 86) \ 자바 \ jdk1.8.0_181 . Android Studio를 사용하는 동안 Gradle 작업이 명령 줄에서 실행되는 경우 다른 위치를 사용하면 여러 Gradle 데몬이 생성 될 수 있습니다.

  1. 더 많은 정보...
  2. Gradle과 동일한 JDK를 사용하고 프로젝트를 동기화하도록 Android Studio 설정
  3. 이 경고를 다시 표시하지 마십시오

그런 다음 불만족스러운 부분을 클릭했습니다 : "이 경고를 다시 표시하지 마십시오": /
Shiasu-sama
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.