닉네임도항상고민
블로그이름이항상고민
닉네임도항상고민
전체 방문자
오늘
어제
  • 분류 전체보기 (125) N
    • Profile (0)
    • Android (33) N
      • Kotlin in android (8)
      • Java in android (0)
      • Dev env setting (9)
      • Meltdown(pokedex) (3)
      • Error (6) N
      • Gradle (3)
      • Etc (4)
    • Google sample app (7)
      • nowinandroid (4)
      • sunflower (3)
    • 프로젝트 뚝딱거리기 (3)
    • Personal project (11)
      • Just One Thing (5)
      • 50Buttons (6)
    • Coding Practice (0)
      • Baekjoon (0)
      • Programmers (0)
    • Git (1)
    • Language (0)
      • Java (0)
      • Kotlin (0)
    • 기타 프로그램관련 (14)
    • 프로그램설치 및 설정 (2)
    • 공부 자료 리뷰 (책 서평, 인강리뷰) (13)
    • 일상과 헛소리 (26)
    • 알쓸신잡 (3)
    • ---이하 out of control--- (0)
    • Spring (3)
    • IOS (1)
    • Mysql (1)

공지사항

블로그 메뉴

  • 홈
  • 태그
  • 미디어로그
  • 위치로그
  • 방명록

최근 댓글

인기 글

최근 글

태그

  • 랜콘센트
  • 2021 macbook pro
  • 진지하게 받지마셈
  • 박사 학위 논문이라고 쓰고 싶다 ㅅㅂ
  • 잠을 잘자고
  • 커밋 수 1년에 200이하 맥북프로 금지
  • 서평
  • 아토믹코틀린
  • 구글
  • 맥북프로 16
  • 대충 헛소리임
  • android codelab
  • 이펙티브코틀린
  • mac jdk삭제
  • KotlinInAction
  • Atomic Kotlin
  • 안스
  • 후기
  • m1pro
  • 누가 코틀린 2주면 익힌다고 했는가.. 누구인가..?
  • m1 롤 설정
  • Apache License 2.0
  • Kotlin In Action
  • 벽면 랜포트 고장
  • effective kotlin
  • 맥북프로 후기
  • Android
  • 그것은 무엇인가
  • 맥북 롤 설정
  • 글을 많이 써보자

티스토리

hELLO · Designed By 정상우.
닉네임도항상고민

블로그이름이항상고민

Google sample app/nowinandroid

gradle toolchain 관련 에러가 났다.

2023. 5. 18. 15:54

=========================================

 

// 앱을 받고 빌드하는데 에러가 발생했다.

org.gradle.api.internal.provider.AbstractProperty$PropertyQueryException: Failed to calculate the value of task ':core:model:compileJava' property 'javaCompiler'.

… 이하생략.

Failed to calculate the value of task ':core:model:compileJava' property 'javaCompiler'. No matching toolchains found for requested specification: {languageVersion=11, vendor=any, implementation=vendor-specific}. No locally installed toolchains match (see https://docs.gradle.org/8.1/userguide/toolchains.html#sec:auto_detection) and toolchain download repositories have not been configured (see https://docs.gradle.org/8.1/userguide/toolchains.html#sub:download_repositories).

 

→ 의심 : 내 스튜디오에 기본 jdk가 17버전이라서 그런가?

JDK를 왠지 11로 바꾸면 될 것 같은데 toolchain이라는게 뭔지 알아봐야겠다.

문서를 대충 보니, 내 pc에 jdk깔린거 알아서 찾아서 붙인다는 거 같은데, jdk11이 설치가 안되어 있어서 gradle sync빌드가 터지는듯 하다.

 

https://docs.gradle.org/current/userguide/toolchains.html

https://docs.gradle.org/8.1/userguide/toolchains.html#sec:auto_detection

https://docs.gradle.org/8.1/userguide/toolchains.html#sec:precedence

https://docs.gradle.org/8.1/userguide/toolchains.html#sub:download_repositories

 

// 이미 다른 사람이 이슈에 올렸고 PR이 하나 올라갔다.

https://github.com/android/nowinandroid/issues/727

→ 와.. 이 이슈 보자마자 실시간으로 PR merge되어서 close되었다.

 

// 위 이슈에 대한 PR

https://github.com/android/nowinandroid/pull/731

→ 얼마 후에 merge가 될 듯하다. → 2분쯤 있다 바로 merge됨.

해당 커밋을 보긴했는데, 그래들에서 jdk17로 지정하는건 알겠는데,

플러긴?을 만들어서 지정하는부분은 전혀 모르겠다.

 

 

// 위 PR에 링크가 있어서, java 11+이니까, ‘+’ 이니까, java17도 해당 된다는 말일듯(?)하고,

android에서 java17에서 작동할 수 있는 api 목록?으로 알고 있다.

https://developer.android.com/studio/write/java11-minimal-support-table

이 11문서가 공홈에서 메뉴에 업데이트가 안되서 접근이 바로 안되는듯하다.

(java8문서에 recommend for you에 다른 볼 게시글로 java11문서도 보였던거 같은데 착각인가..?)

 

=========================================

(11문서 말고, 다른 비슷한거 참고용)

// android developer blog - API desugaring supporting Android 13 and java.nio

https://android-developers.googleblog.com/2023/02/api-desugaring-supporting-android-13-and-java-nio.html

// android developer blog(미디엄) - Support for newer Java language APIs

https://medium.com/androiddevelopers/support-for-newer-java-language-apis-bca79fc8ef65

// 안드공홈 java8+ 문서

안드공홈 - android studio - android studio editor - 좌측 메뉴에 write your code - Use Java8 language features

https://developer.android.com/studio/write/java8-support

https://developer.android.com/studio/write/java8-support-table

// 안드공홈 AGP - kotlin - D8, R8 버전 호환성 테이블 문서

안드공홈 - android studio - android gradle plugin - 좌측메뉴에 D8 and R8 compiler version compatiblility

https://developer.android.com/build/kotlin-support

 

==========================================

// Toochain은 무엇인가?

⇒ 해당 PR을 받아서 돌리면 되겠는데,

일단 toolchain이 뭔지는 확인하자.

gradle공식문서를 보면,

대강 봐서는 로컬jdk들 환경이 다르니까, gradle스크립트에서 자바버전을 확인하게 하려고 하는듯?

jdk버전뿐만아니라, 벤더사까지 맞추게 할 수 있다.

툴체인 가져오는 우선순위도 있는거 같다?

toolchain이라는 단어자체는 도구모음을 범용적으로 쓰는 말인거 같고,

android toolchain으로 한국어로는 검색되는게 별로 없는듯하다.

지금 gradle toolchain for jvm은 그냥 자바버전 아다리 맞춰서 돌리려고 쓰는거라고 대충 알고 있어야겠다.

 

// 영문으로 검색해서 코틀린 블로그에서 그나마 설명이 되어있다.

https://blog.jetbrains.com/kotlin/2021/11/gradle-jvm-toolchain-support-in-the-kotlin-plugin/

 

// toochain 문법 어떻게 쓸지 약간 참고할만한 블로그.

https://daryeou.tistory.com/347

 

==========================================

 

일단, 툴체인은 여기까지만 알아보고, 다시 할거 진도를 나가보자.

저작자표시 비영리 (새창열림)

'Google sample app > nowinandroid' 카테고리의 다른 글

REDAME.md 파일과 관련 문서 읽기  (0) 2023.05.18
샘플앱 fork하기  (0) 2023.05.16
0. sunflower, now in android 분석을 시도해보자  (0) 2023.05.16
    'Google sample app/nowinandroid' 카테고리의 다른 글
    • REDAME.md 파일과 관련 문서 읽기
    • 샘플앱 fork하기
    • 0. sunflower, now in android 분석을 시도해보자
    닉네임도항상고민
    닉네임도항상고민
    개발 블로그라기 보단, 개발' 일기' 블로그가 되어가고 있다. 단순히 검색해서 나오는 코드보다는 공부하면서 생기는 노하우를 전달하고 싶다. (도움 되는 글을 보셨다면 '하트'를 눌러주셔요♥ , 도움 안되는 잡글이 있다면, 댓글로 적어주시면 비공개 처리 합니다. )

    티스토리툴바