Android Studio에서 프로젝트를 컴파일하려고 할 때 다음 오류가 발생합니다.
Gradle: error: diamond operator is not supported in -source 1.6
내가 찾은 모든 프로젝트 환경 설정에서 1.7을 대상으로 설정했습니다. 또한 1.7 SDK 아래의 프로젝트 SDK에 표시된 경로는 Java 1.7 설치의 올바른 경로입니다.
터미널에서 java -version을 실행하더라도 Java 1.7에서 실행 중임을 알려줍니다.
JAVA_HOME env 변수를 다음과 같이 설정하려고했습니다.
/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home
오류는 사라지지 않습니다. 오류를 어떻게 제거합니까?
답변
Java 7 지원은 빌드 도구 19에서 추가되었습니다. 이제 다이아몬드 연산자, 멀티 캐치, 리소스 사용, 스위치의 문자열 등과 같은 기능을 사용할 수 있습니다 build.gradle
.에 다음을 추가하십시오 .
android {
compileSdkVersion 19
buildToolsVersion "19.0.0"
defaultConfig {
minSdkVersion 7
targetSdkVersion 19
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
}
Gradle 1.7 이상, Android gradle 플러그인 0.6. 이상이 필요합니다.
참고로 minSdkVersion
19 개의 리소스 만 사용해야 합니다. 다른 기능은 이전 플랫폼에서 작동합니다.
Android Gradle 플러그인 사용 설명서에 연결
답변
위의 답변이 오래되었지만 새로운 Android Studios 1에서는 다음과 같이 1.7 (또는 원하는 경우 1.6)에서 모듈이 실행되는 것을 볼 수 있습니다. 파일-> 프로젝트 구조를 클릭하십시오. 실행할 모듈을 선택한 다음 “Source Compatibility”및 “Target Compatibility”에서 1.7을 선택하십시오. “확인”을 클릭하십시오.
답변
새로운 Android 스튜디오 버전 (0.8.X)에서 변경할 수 있습니다
파일-> 기타 설정-> 기본 설정-> 컴파일러 (왼쪽 화살표를 클릭하여 확장)-> Java 컴파일러-> 여기에서 프로젝트 바이트 코드 버전을 변경할 수 있습니다
답변
최신 Android Studio 1.4.
파일-> 프로젝트 구조-> SDK 위치-> JDK 위치를 누르십시오.
SDK 위치 아래에있는 모듈로 이동하여 개별 모듈 JDK 버전 호환성을 설정하고 그에 따라 소스 호환성을 편집 할 수도 있습니다. (이는 Android 모듈에만 적용됩니다).
답변
프로젝트를 마우스 오른쪽 버튼으로 클릭하고 모듈 설정 열기> “프로젝트 설정”섹션에서 “프로젝트”를 선택하십시오.
Project SDK를 최신으로 변경하고 (API 21 일 수 있음) 프로젝트 언어 수준을 7 이상으로 변경하십시오.
답변
현재 Android는 Java 7, Java 6 만 지원하지 않습니다. 따라서 다이아몬드 구문과 같은 Java 7의 새로운 기능은 현재 지원되지 않습니다. 이를 지원할 소스를 찾는 것은 쉽지 않지만 Dalvic 엔진은 Java 버전 6까지만 지원했던 Apache Harmony 의 서브 세트를 기반으로 빌드 된 것을 알 수 있습니다. 또한 Android 앱 개발을위한 시스템 요구 사항 을 확인하면 적어도 JDK 6이 필요합니다 (물론 이것은 실제 증거가 아니라 표시 일뿐입니다). 그리고 이것은 내가 가진 것과 거의 동일하게 말합니다. 더 실질적인 것을 발견하면 그것을 추가 할 것입니다.
편집 :
원래이 답변을 작성한 이후 Java 7 지원이 추가 된 것 같습니다. Sergii Pechenizkyi 의 답변을 확인하십시오 .
답변
항상 최신 SDK 버전을 사용하여 빌드하십시오.
compileSdkVersion 23
그것은 않습니다 런타임 동작에 영향을 미치지 만, 당신에게 최신 프로그래밍 기능을 제공합니다.