Android Studio 및 Gradle에서 소스 1.7을 설정하는 방법
Android Studio에서 프로젝트를 컴파일하려고 하면 다음 오류가 발생합니다.
Gradle: error: diamond operator is not supported in -source 1.6
내가 찾은 모든 프로젝트 기본 설정에서 1.7을 대상으로 설정했습니다.또한 프로젝트 SDK의 1.7 SDK 아래에 표시되는 경로는 Java 1.7 설치에 대한 올바른 경로입니다.
java - version을 단말기에서 실행해도 java 1.7에서 실행 중임을 알 수 있습니다.
JAVA_를 설정하려고 했습니다.HOME env는 이에 따라 달라집니다.
/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home
에러는 해소되지 않는다.오류를 제거하려면 어떻게 해야 합니까?
빌드 툴 19에서 Java 7 지원이 추가되었습니다.이제 다이아몬드 연산자, 멀티 캐치, 리소스 사용 시도, 스위치 문자열 등의 기능을 사용할 수 있습니다.다음 항목을 에 추가합니다.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 studio 버전(0.8.X)에서 변경할 수 있습니다.
파일 -> 기타 설정 -> 디폴트 설정 -> 컴파일러 (왼쪽 화살표를 클릭하여 확장) -> Java 컴파일러 -> 프로젝트 바이트 코드 버전을 변경할 수 있습니다.
최신 Android Studio 1.4.
[파일] - > [프로젝트 구조] - > [SDK 로케이션] - > [JDK 로케이션]을 클릭합니다.
또한 모듈(SDK 위치 아래)로 이동하여 개별 모듈의 JDK 버전 호환성을 설정하고 그에 따라 소스 호환성을 편집할 수도 있습니다.(이것은 Android 모듈에만 적용됩니다).
프로젝트 우클릭> [모듈 설정 열기]> [프로젝트 설정]섹션에서 [프로젝트]를 선택합니다.
프로젝트 SDK를 최신(API 21일 수 있음)으로 변경하고 프로젝트 언어 수준을 7+로 변경합니다.
현재 Android는 Java 7을 지원하지 않고 Java 6만 지원합니다.따라서 다이아몬드 구문과 같은 Java 7의 새로운 기능은 현재 지원되지 않습니다.이를 지원하는 소스를 찾는 것은 쉽지 않지만 Dalvic 엔진은 버전 6까지만 Java를 지원하는 Apache Harmony의 서브셋을 기반으로 한다는 것을 알 수 있었습니다.Android 앱 개발에 필요한 시스템 요건을 체크하면 적어도 JDK 6이 필요하다는 것도 알 수 있습니다(물론 이것은 실제 증거는 아니지만, 단지 표시일 뿐입니다).그리고 이것은 나와 거의 같은 것을 말해준다.더 이상 광고할 게 있으면 추가하겠습니다.
편집: 이 답변을 작성한 이후 Java 7 지원이 추가된 것 같습니다.Sergii Pecenizkyi의 답변을 확인하십시오.
항상 최신 SDK 버전을 사용하여 빌드:
compileSdkVersion 23
런타임 동작에는 영향을 주지 않지만 최신 프로그래밍 기능을 제공합니다.
Gradle로 이동하여 source Compatibility를 찾고 1.6에서7로 변경합니다.적어도 나한테는 효과가 있었어.
모듈 설정으로 이동하여 소스/타깃 호환성을 1.7로 설정할 수도 있습니다.
그래들에서는 다음 코드가 생성됩니다.
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
언급URL : https://stackoverflow.com/questions/17637179/how-to-set-source-1-7-in-android-studio-and-gradle
'programing' 카테고리의 다른 글
Axios-한 번에 여러 요청을 작성합니다(vue.js). (0) | 2022.08.28 |
---|---|
vue 부트스트랩 b-table 셀 내부에 링크 생성 (0) | 2022.08.28 |
찾을 수 없는 키에 대한 기본값을 반환하려면 HashMap을 선택하십시오. (0) | 2022.08.28 |
C의 보이드 포인터에 대한 포인터 산술 (0) | 2022.08.28 |
정적 필드와 함께 @Autowired를 사용할 수 있습니까? (0) | 2022.08.28 |