AI형제들이 알려준 대로 코딩을 해서 오류가 안 나오면 이상한 거 같다. 매번 오류다 그래서 방법도 계속 바꿔 보는데도 계속 빨간 줄이다. 코드 내에 빨간 줄이 없어서 좋아하며 빌드해 보면 역시나 반응이 없다. 이제는 빌드가 되면 더 이상하다. 너 왜 되는 거야?^^;;
다트 파일을 여러 개를 날리고 가장 단순한 방법으로 코딩을 해 달라고 했고, 빌드를 했는데 만난 녀석이 이 녀석..
Execution failed for task ':flutter_inappwebview:minifyReleaseWithR8'.
그 위에 에러 메시지는 아래와 같다.
ERROR: Missing classes detected while running R8. Please add the missing classes or apply additional keep rules that are generated in C:\Users\사용자\StudioProjects\앱 이름\build\flutter_inappwebview\outputs\mapping\release\missing_rules.txt.
먼저 제미니 2세
1. flutter_inappwebview: 최신 버전을 pubspec.yaml에 등록. 가장 중요하단다.
자세한 내용은 아래에..
딥식이.. 비슷한 듯하면서도 뭔가 더 복잡한 걸 얘기하는 듯하다. 6번은 엉뚱한 얘기를 하는 듯하다. 난 inappwebview 자체가 pubspec.yaml에 없었다고..ㅜ.ㅜ
챗GPT.. 역시나.. 쳇쳇쳇.. Chat을 별로 안 좋아하는 듯.. 무료 사용자라서 그런가..^^;; 아님 내가 뒷담화 하는 걸 눈치챘나?^^;; 사랑해요~챗GPT~갓파트 갓파트~~
나의 선택:
일단, flutter_inappwebview를 버전해 보고, 다시 빌드해 보자. 그리고 오류가 생기면 다음 단계로 이동.
* What went wrong: Execution failed for task ':google_mobile_ads:generateReleaseLintModel'.
> Could not resolve all files for configuration ':google_mobile_ads:releaseUnitTestRuntimeClasspath'.
> Failed to transform bcprov-jdk18on-1.78.1.jar (org.bouncycastle:bcprov-jdk18on:1.78.1) to match attributes {artifactType=processed-jar, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-runtime}.
> Execution failed for JetifyTransform: C:\Users\사용자\.gradle\caches\modules-2\files-2.1\org.bouncycastle\bcprov-jdk18on\1.78.1\39e9e45359e20998eb79c1828751f94a818d25f8\bcprov-jdk18on-1.78.1.jar.
> Failed to transform 'C:\Users\사용자\.gradle\caches\modules-2\files-2.1\org.bouncycastle\bcprov-jdk18on\1.78.1\39e9e45359e20998eb79c1828751f94a 818d25f8\bcprov-jdk18on-1.78.1.jar' using Jetifier. Reason: IllegalArgumentException, message: Unsupported class file major version 65. (Run with --stacktrace for more details.) Suggestions: - Check out existing issues at https://issuetracker.google.com/issues?q=componentid:460323&s=modified_time:desc, it's possible that this issue has already been filed there. - If this issue has not been filed, please report it at https://issuetracker.google.com/issues/new?component=460323 (run with --stacktrace and provide a stack trace if possible).
* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.
이게 다 한 통속인지는 모르겠으나 새로운 에러 메시지인 거 같다. 여기서 고민이 된다. 새로운 문제를 AI브라더들에게 물어봐서 또 다른 해결방법을 들을 것인지 아니면 나머지 해결 방법들을 적용해 볼 것인지..
일단, 물어나 보자.
제미니의 원인 분석..
제공해 주신 오류 메시지는 bcprov-jdk18on 라이브러리 (Bouncy Castle Provider)와 사용하는 JDK (Java Development Kit) 버전 간의 호환성 문제 때문에 발생합니다. 구체적으로, "Unsupported class file major version 65" 오류는 bcprov-jdk18on-1.78.1.jar 파일이 현재 사용 중인 JDK보다 최신 JDK 버전으로 컴파일되었음을 나타냅니다. Class file major version 65는 JDK 19에 해당합니다.
라고 셋 다 비슷한 원인 분석을 해주는데, 제미니는 오히려 JDK를 19 버전을 사용하라고 하고, 다른 두 친구들은 JDK17이나 11이 안정된 버전이니 버전을 확인하고 다운 그레이드 하라는 내용
제미니:
딥식이:
갓파트:
제미니가 단호해 보인다.
JDK19로 올려도 되는지 물어보니..
제미니:
딥식이:
갓파트:
일단, 하루가 지났으니 PC 재부팅부터 해보자~^^;; 결정적인 선택을 뒤로 미루는 편~
아래에서 다운 받아 보기로 한다.
https://adoptium.net/temurin/releases/?os=windows&arch=x64&package=jdk&version=19
가장 중요한 설치 경로이다. 지난 번 설치한 JDK 17은 오라클에서 제공한 거라서 C드라이브 program files\java에 있었는데 이 녀석은 C:\Program Files\Eclipse Adoptium\jdk-19.0.2.7-hotspot에 있다.
나 같이 설치해 놓고 못 찾는 사람들을 위하여 명령 프롬프트(윈도우 cmd)에서 ' where java '를 입력하면 아래와 같이 찾아준다.
그리고 경로에
안드로이드 스튜디오에서 JAVA 버전을 JDK 19로 바꾸는 방법
1번 방법을 해보고 AS를 재시작 후 2번 방법으로 확인해 봐야겠다.
- File > Project Structure를 선택합니다.
- SDK Location 섹션에서 JDK location 옆에 있는 Edit 버튼을 클릭합니다.
- Add New JDK를 클릭하고 JDK 19 설치 경로를 선택합니다.
- OK 버튼을 클릭하여 JDK를 등록합니다.
라고 되어 있으나 보이지 않는다. 스크린샷 찍어서 알려달라고 해도 이상한 말.. 그냥 + 버튼 누르고 추가하고 물어봤더니 방법이 맞는단다. 갸우뚱하지만 일단 해 보기로 한다.
project 탭에서 SDK와 Language level을 선택,
Modules에서도 19로 수정 AS 재시작
저걸 OK한다고 해서 지가 알아서 해줄리가 없는 듯.. build.gradle을 열어봤는데 여전히 17로 나온다. 수동으로 19로 바꿔 준다.
file 메뉴에 있다는 Sync Project with Gradle Files를 찾을 수가 없다.
그런데 아무런 변화가 없다.
일단, 빌드해 봤으나 역시나 또다른 오류를 만난다. 내 코드가 오류가 있는지를 보기도 전에 다른 부분에서 오류를 만나고 있는 듯해서 무척이나 열이 받는다.
Slow Down~ Take it easy Bro~~
하랬는데.. 이건 그냥 정지 아닌가?--;;
이게 무슨 말인지 이해를 못했는데..
터미널에서 cd android를 입력 후에 ./gradlew --refresh-dependencies를 했어야 했나?
그런데 뭐라고? Support for running on JAVA 20? 이건 뭔 개똥 같은 소리야?
모르겠다.. 일단, 이 오류는 여기까지만..