Android N을 사용하려면 IDE가 Java 1.8 이상에서 실행되어야합니까?


117

XML레이아웃이이 오류 메시지와 함께 렌더링되지 않습니다. 이미 Java 8을 사용하고 있습니다.

여기에 이미지 설명 입력

또한 Gradle에서 최신 빌드 도구를 사용합니다.

android {
    compileSdkVersion 'android-N'
    buildToolsVersion 24.0.0 rc1
    ...
}

XML 오류-

여기에 이미지 설명 입력


2
Android Studio에는 모든 종류의 렌더링 문제가 있습니다. 재현 가능한 최소한의 예 를 제공하는 것이 좋습니다 . 이 경우에는 레이아웃 파일과 특정 오류가 포함됩니다.
CommonsWare

@CommonsWare XML 오류 이미지를 업데이트했습니다. 지원되는 JDK를 설치하면 이미 수행 한 단계를 설정하도록 리디렉션되었습니다.
mjosh

1
buildToolsVersion '24 .0.0 rc1 '로 변경해야했는데 문서에 따옴표가 누락되었습니다.
Phyrum Tea

@PhyrumTea 오류가 사라지도록 만들지 않았습니다.
mjosh

1
마지막으로 프로젝트를 빌드하고 실행하려고 할 때 Directory cannot have its readable permission cleared for everybody. 분명히 그것은 알려진 버그 이며 Google이 작업 중입니다.
mjosh

답변:


187

설명하신 것과 동일한 오류가 발생했지만 OS X에서는이 문제가 해결되지 않을 수도 있습니다 (Windows에 해당하는 항목을 모르기 때문에).하지만 이것은 OS에 특정한 것이 아니기 때문에 OS X 동료를위한 솔루션을 남겨두고 있습니다. 저 밖에. 파일을 편집하고 /Applications/Android\ Studio.app/Contents/Info.plist1.6 버전 (제 경우)을 제거하고 원하는대로 1.6+, 1.7+ 또는 1.8을 배치 할 수 있습니다. 내 것이 이렇게 끝났어

...
<key>JVMVersion</key>
<string>1.7+</string>
...

Java 버전 1.8_60에서 1.8_75 ( IDEA-146691 ) 로 드래그 앤 드롭 하면 버전을 성공적으로 변경하면 IDE에서보고 하는 비 호환성이 있습니다.

터미널 사용자가 아닌 경우

  1. Android Studio.app파일을 찾으십시오 . Dock에있는 경우 마우스 오른쪽 버튼으로 클릭하고을 선택할 수 있습니다 Options > Show in Finder.
  2. 그것을 마우스 오른쪽 버튼으로 클릭하고을 선택하십시오 Show package content.
  3. 언급 된 파일 ( Contents/Info.plist)로 이동합니다 .
  4. 선호하는 텍스트 편집기로 파일을 편집하십시오.

11
이렇게하면 Android Studio가 실행되는 가상 머신이 변경됩니다. 내 OSX에서 원래 값은 <key> JVMVersion </ key> <string> 1.6 *, 1.7 +, 1.8 </ string>이고 새 값은 다음과 같습니다. <key> JVMVersion </ key> <string> 1.8 </ 문자열>
santhyago

8
효과가있다! 이 솔루션에 감사드립니다. 문제는 왜 구글이 개발자들이이 문제에 시간을 낭비하기를 바라는가?
Kotik_o

3
Google의 문서 부족을 해결해 주셔서 감사합니다. :). 이 지침이 여기에없는 이유가 궁금합니다 : developer.android.com/intl/pt-br/preview/setup-sdk.html#java8 (이것은 안드로이드 스튜디오에 표시되는 링크입니다).
Totalys

7
잘 작동합니다 !! 안타깝게도 Android Studio를 업데이트 할 때 (방금 최신 버전으로 수행 한) Info.plist 파일이 재설정되므로 JVMVersion을 변경하려면 단계를 다시 반복해야합니다 <key>JVMVersion</key> <string>1.8</string>.
Micro

3
Android Studio 2.2는 <string> 1.8 *, 1.8 + </ string>을 사용합니다.
jmnwong

147

미리보기 창에서 Android 아이콘 옆에있는 문자 N을 클릭하고 API 레벨 23 이하를 선택합니다. 그것은 그것을 해결해야합니다.

rpeview 창의 첫 번째 아이콘 행


25
하지만 API 23이 아닌 N에서 미리보고 싶습니다.
mjosh

3
내 Mac에서 동일한 문제가 발생했습니다. API 수준을 24에서 23으로 낮추는 것이 저에게 효과적이었습니다.
salman

3
하지 대답 오른쪽으로 표시 답하십시오
Pavneet_Singh

이것은 대답이 아닙니다. 이것은 문제 환경을 무시하는 것입니다.
enadun

잘하셨습니다. 네, 제 문제가 해결되었습니다. 감사합니다. :)
arango_86

63

제 경우에는 설정 JDK_HOMEJAVA_HOME환경 변수 C:\Program Files\Java\jdk1.8.0_60.

여기에 이미지 설명 입력

에서 Java 버전을 확인하십시오 Help > About. 방금 설정 한 JRE 버전이 표시되어야합니다.

여기에 이미지 설명 입력

이제 .NET에서 레이아웃을 미리 볼 수 있습니다 N.


1
나는 당신이 말한 것을했지만 도움을 줄 때-> 그것에 대해 여전히 내 오래된 jdk를 가리 킵니다. 왜 그런 겁니까?
The_Martian

1
JRE : 1.8 (약)이 있습니다. 그러나 v24를 대상으로하는 앱을 빌드 할 수 없습니다. > compileSdkVersion 'android-24' requires JDK 1.8 or later to compile.
Zapnologica

1
@The_Martian 컴퓨터를 다시 시작해야합니다.
squeeish

1
Mac Os에서는 이전 jdk 버전을 제거합니다. 그 후, 안드로이드 스튜디오가 마지막 버전을 선택
lopez.mikhael

1
@ lopez.mikhael은 실제로 나를 위해 일한 유일한 것입니다. 나는 내가 찾을 수있는 모든 가능한 설정을 변경했고, 내가 예상했던대로 정확하게 모든 것을 구성했고, 오류가 계속 발생했습니다. 결국 이전 jdk 디렉토리를 JavaVirtualMachine 폴더의 old_jdks라는 하위 디렉토리로 이동했습니다. 이제 모든 것이 잘 작동합니다.
zgc7009

27

들어 Mac 사용자 이 문제 (내가 OS X 10.11.5 안드로이드 스튜디오 2.1.2을 실행하는거야)와, 여기 당신이 그것을 해결할 수있는 방법은 다음과 같습니다

현재 Android Studio의 Mac 버전은 Java 6 (앱의 JDK 버전과 동일 할 필요는 없음)으로 실행됩니다. Java 6은 Java 7 및 8보다 글꼴 렌더링이 우수하고 레이아웃을 렌더링하는 것보다 더 중요하기 때문입니다.

먼저 JDK 8이 설치되어 있는지 확인하십시오 .

그런 다음 다음 명령을 실행하십시오.

$ export STUDIO_JDK=/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk
$ open /Applications/Android\ Studio.app/

당신은을 변경해야 할 수도 있습니다 91jdk1.8.0_91.jdk다른 버전. 사용중인 JDK 버전을 확인할 수 있습니다.

$ ls /Library/Java/JavaVirtualMachines/

안타깝게도이 방법을 사용하려면 터미널에서 앱을 열어야하지만 항상 스크립트를 만들 수 있습니다.

더 많은 정보

편집 : 그리고 정말로 터미널에서 열지 않으려면 :

  1. 컨텐츠로 AppleScript 생성 : do shell script "export STUDIO_JDK=/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk; open /Applications/Android\\ Studio.app/"
  2. 파일> 저장 파일 형식 선택 응용 프로그램 . 어딘가에 저장하십시오.
  3. 아이콘을 변경하려면 여기를 참조하십시오.
  4. 원하는 경우 앱을 런치 패드로 드래그합니다.

스크립트를 실행하려고하면 다음과 같은 결과가 나타납니다. error "sh: /usr/local/bin/studio: No such file or directory" number 127문제를 해결할 방법이 있습니까? 터미널에서 실행하면 완벽하게 작동합니다
Daniele

@Daniele 죄송합니다. 다른 쉘 스크립트를 만든 것을 잊었습니다. AppleScript에는 위와 동일한 명령이 있어야합니다. 내 업데이트 된 답변을 참조하십시오.
wumbo

5

나는 같은 문제를 만났다.

jdk1.6, jdk1.7, jdk1.8을 설치하고 당신이 한 것처럼 Studio를 배포했습니다.

내 솔루션은 jdk1.6 및 jdk1.7을 제거하고 jdk1.8 만 남겨 둡니다.

sudo rm -rf ${path to jdk1.6}
sudo rm -rf ${path to jdk1.7}

그게 다야.


안전이해야 할 것입니다
마이크로

@MicroR 다른 소프트웨어가 jdk1.6 및 jdk1.7에 의존하지 않았다면 안전하다고 생각합니다.
youngwind

이 솔루션으로 문제가 해결되었습니다. 이 제거 방법은 안전하며 Oracle에서 권장하는 방법입니다 ( docs.oracle.com/javase/8/docs/technotes/guides/install/… )
Showpath

2

Ubuntu 14.04를 사용하고 있는데 NDK가 없다는 차이점과 유사한 오류가 발생했습니다. 내 솔루션은 프로젝트 정의에서 Java 8을 설정 한 후 Android Studio를 더 이상 재부팅하지 않는 것입니다.

콘솔 "java -version"에서 시스템 Java 버전을 확인하면 다음과 같이 출력됩니다.

java version "1.8.0_91"

JAVA_HOME = "/ Library / Java / JavaVirtualMachines / jdk1.8.0_91.jdk / Contents / Home"을 설정했습니다. STUDIO_SDK도 "/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home"이어야합니까?
mythicalcoder

@Maven 이론적으로는 Android Studio를 실행하기위한 SDK 경로가 될 STUDIO_SDK 변수를 설정할 수 있습니다 (Studio의 config params tools.android.com/tech-docs/configuration에서 언급했듯이 ). 그러나 제 경우에는 해당 변수를 설정하지 않았고 IDE가 예상대로 실행 중입니다.
Sergio A Guzmán

당신이 옳습니다. 나는 다른 것을 시도했다. 실제로 1.8의 문제가 제대로 연결되지 않았습니다. 이것은 stackoverflow.com/a/35935433/2369867 해결했습니다 . 감사.
mythicalcoder

2

Ubunutu와 같은 문제가있었습니다. 문제는 Java8에서 IDE를 실행하지 않았습니다.

다음을 사용하여 OS의 기본 Java 프로그램을 업데이트하여 수정했습니다.

sudo update-alternatives --config java

그리고 관련 Java8 경로를 선택하십시오.


1

"Android N을 사용하려면 IDE가 Java 1.8 이상에서 실행되어야합니다."라는 문제에 직면했습니다. C:\Program Files\Java\jdk1.8.0_92.NET에서 프로젝트의 JDK로 설정 했지만 오류가 계속 표시 되었습니다 File > Project Structure.

나는에서 내 환경 변수에 JAVA_HOME을 업데이트하여 그것을 해결 C:\Program Files\Java\jdk1.7.0_67C:\Program Files\Java\jdk1.8.0_92. 그렇게하고 Android Studio를 다시 시작했을 때 디자인 모드를 사용할 수있게되었습니다.

운영체제 : Windows 10

안드로이드 스튜디오 : 2.1.2


1

이런 식으로 해결했습니다. (AS + MAC OX El Capitan)

  1. SDK 도구 업데이트> Android SDK 플랫폼 도구
  2. 도움말> 사용자 정의 속성 편집> 대화 상자가 프롬프트 (예를 누름) 한 다음

    JVMVersion=1.8 

그런 다음 Android Studio를 완전히 닫고 프로젝트를 다시로드하십시오.



0

내 문제는 Android N이 "부분적으로 설치"되었다는 것입니다.

내 해결책은 기본 설정 / 모양 및 동작 / 시스템 설정 / Android SDK로 이동하여 상태를 확인하는 것이 었습니다. "부분적으로 설치된"경우 제거하고 다시 설치해야합니다. (확인란을 선택 취소하고 적용을 누르십시오. 제거됩니다. 그런 다음 상자를 선택하고 다시 설치할 수 있습니다.) 저를 위해 일했습니다. 하위 버전 (예 : 23)으로 이동하면 build.gradle에서 buildToolsVersion 변수를 "23.0.0"으로 변경해야합니다.


1
재설치 후에도 여전히 "일부 설치됨"이라고 표시됩니다.
Andrew

다시 설치 후 "부분적으로 설치"되어 있습니다. @Andrew 나중에 해결책을 찾았습니까?
mythicalcoder

나를 위해 @Maven은 앱 빌드를 시도 할 때 올바른 빌드 변형을 선택하지 않았다는 것이 내 문제라는 것을 알게되었습니다.
Andrew

0

나는 최근에 같은 문제에 직면했습니다. API 미리보기 수준을 23 이하로 변경해보세요. 그것은 나를 위해 일했습니다.


0

나는 같은 문제에 직면했다. 컴파일 된 SDK 버전에 대한 XML 레이아웃을 렌더링하고 있는지 확인하십시오 (그 이상이면 안 됨). Targeted SDK 버전 23을 사용하여 코드를 컴파일하고 SDK 버전 24에서 XML을 렌더링하려는 경우이 문제에 직면하게됩니다.


0

Mac OS에서 STUDIO_JDK를 설정할 때 기억해야 할 몇 가지 사항이 있습니다.

  • 기본적으로 Apple의 Java 1.6은 Android Studio를 시작하는 데 사용됩니다.
  • STUDIO_JDK가 Oracle의 Java로 설정되면 Android Studio에서 실행하는 데 사용됩니다.

둘 사이의 차이점은 Apple의 Java IMO가 IDE에서 더 좋고 더 나은 글꼴 안티 앨리어싱을 제공한다는 것입니다.

여기 에 대한 답변 은 글꼴 앤티 앨리어싱과 관련된 Android Studio 의 버그 를 참조하는 것 입니다. 티켓은 이미 닫혔지만 여전히 렌더링이 Apple Java 및 Oracle SDK에서 다릅니다 (v1.8.0_102가 있음). 그리고 전자는 여전히 마지막 것보다 더 나은 인식을 가지고 있습니다.


0

프로젝트 Java 1.8에서 사용하십시오-JDK의 최신 버전을 다운로드하고 설치하십시오 (JSK가없는 경우).

그런 다음 build.gradle에 다음 줄을 추가합니다. android {... // Java 8 언어 기능을 사용하는 각 모듈에 대해 // 구성합니다 (소스 코드에서 또는 // 종속성을 통해). compileOptions {sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8} // Kotlin 프로젝트의 경우 kotlinOptions {jvmTarget = "1.8"}}


-1

machine : windows8 64bit 내 경우에는 내가 설치 한 jdk1.7이 32bit 였기 때문에 studio.exe (32bit)를 사용하고 있었기 때문에 새로운 jdk1.8 (64bit)을 다운로드했을 때도 내가 사용하고 있던 studio 인스턴스 (32bit)를 사용할 수 없었습니다. t 감지하지만 이전 jdk를 제거하고 studio.exe를 다시 실행하려고 할 때 32 비트 jdk를 설치하라는 메시지가 표시되었습니다. 그래서 studio64.exe를 실행했고 원활하게 실행되었습니다. 환경 변수에 올바른 경로가 있는지 확인하십시오. 건배 안드로이드 N


-1

Android Studio (x64)를 시작할 때 x84가 아닌 x64 용 jdk를 설치했는지 확인하십시오.

여기에 이미지 설명 입력

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.