inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[리뉴얼] 맛집 지도앱 만들기 (React Native & NestJS)

Android 환경 build error 관련 질문 드립니다.

336

강지원

작성한 질문수 1

0

질문 작성시 꼭 참고해주세요


IOS는 빌드가 잘 이뤄지지만 AOS에서 빌드 에러가 발생합니다.

react-native-reanimated 설치 이후 gradle이 문제인 것으로 보여져

여러 시도를 해봤는데 해결이 되지 않아 질문드립니다.

 

1. 개발 환경 정보

 

2. 프로젝트 버전 정보

package.json

{
  "name": "pawpaw",
  "version": "0.0.1",
  "private": true,
  "scripts": {
    "android": "react-native run-android",
    "ios": "react-native run-ios",
    "lint": "eslint .",
    "start": "react-native start",
    "test": "jest"
  },
  "dependencies": {
    "@react-native-masked-view/masked-view": "^0.3.2",
    "@react-navigation/drawer": "^6.7.2",
    "@react-navigation/native": "^6.1.18",
    "@react-navigation/stack": "^6.4.1",
    "react": "18.2.0",
    "react-native": "0.72.17",
    "react-native-gesture-handler": "^2.22.1",
    "react-native-reanimated": "^3.16.7",
    "react-native-safe-area-context": "^5.1.0",
    "react-native-screens": "^4.5.0"
  },
  "devDependencies": {
    "@babel/core": "^7.20.0",
    "@babel/preset-env": "^7.20.0",
    "@babel/runtime": "^7.20.0",
    "@react-native/eslint-config": "^0.72.2",
    "@react-native/metro-config": "^0.72.12",
    "@tsconfig/react-native": "^3.0.0",
    "@types/react": "^18.0.24",
    "@types/react-test-renderer": "^18.0.0",
    "babel-jest": "^29.2.1",
    "eslint": "^8.19.0",
    "jest": "^29.2.1",
    "metro-react-native-babel-preset": "^0.76.9",
    "prettier": "^2.4.1",
    "react-test-renderer": "18.2.0",
    "typescript": "4.8.4"
  },
  "engines": {
    "node": ">=16"
  }
}

 

3. zshrc 정보

export PATH="/opt/homebrew/bin:$PATH"

export NVM_DIR="$HOME/.nvm"
[ -s "/opt/homebrew/opt/nvm/nvm.sh" ] && \\. "/opt/homebrew/opt/nvm/nvm.sh"  # This loads nvm
[ -s "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" ] && \\. "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm"  # This loads nvm bash_completion

export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/platform-tools

export PATH=$HOME/.rbenv/shims:$PATH
eval "$(rbenv init - zsh)"

 

4.문제 해결을 위한 시도

1)gradle.properties에 추가 속성을 설정

android.disableAutomaticComponentCreation=true
org.gradle.java.home=/Library/Java/JavaVirtualMachines/zulu-17.jdk/Contents/Home

2) react-native-reanimated 3.5.4 ,3.3.0버전과 3.16.7버전 설치 후 빌드를 시도해도 해결 X

3) babel.config.js에 react-native-reanimated/plugin 추가

 

5.터미널에 발생한 에러 내용

터미널 스크린샷 01.png터미널 스크린샷 02.png

 

react-native typescript build android reanimated

답변 2

0

Kyo

해당에러는 보통 reanimated 호환성 이슈로 버전을 다르게 설치하여 해결된 분들이 많은데요.

혹시 리셋캐시도 해보셨을까요?

3.3.0이나 3.5.4로도 해결되지않았다면 아래 글의 코멘트를 참고해서 해보시겠어요?

https://www.inflearn.com/community/questions/1463090

 

0

강지원

참고로 전달해주신 자료 내용을 적용해봤지만 그럼에도 해결은 안되었습니다.

마지막으로 자바 버전만 17로 세팅해서 시도해보고

이마저도 안되면 이후 진도를 나가며 조금씩 다시 해결 시도를 해보도록 하겠습니다! 답변 주셔서 감사합니다 강사님!

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. 강지원님께서 겪고 계신 Android 환경에서의 빌드 실패 문제는 주로 Gradle 설정, JDK 버전 또는 react-native-reanimated와 관련된 호환성 문제일 가능성이 높습니다. 에러 메시지를 같이 분석하면서 해결 방법을 간단히 요약드리겠습니다.

  1. Java JDK 버전 문제:

    • 에러 메시지에서 “switch rules are not supported in -source 11” 및 “instanceof pattern matching” 관련 문제를 보았습니다. 이는 JDK의 소스 버전과 관련된 문제로, 현재 JDK 17을 사용하고 계시지만 Gradle 설정 내에는 소스 호환성을 명시하지 않아서 발생할 가능성이 큽니다.
    • 해결 방법: Gradle 파일(예: android/build.gradle)에 compileOptions를 추가하여 문제를 해결할 수 있습니다.
     android {
         ...
         compileOptions {
             sourceCompatibility JavaVersion.VERSION_17
             targetCompatibility JavaVersion.VERSION_17
         }
         ...
     }
    
  2. react-native-reanimated 호환성 문제:

    • react-native-reanimated 모듈에서 Java 11 관련 문제로 보이지만, JDK 17에서도 동작해야 합니다. --source 14 or higher 사용이 필요할 수 있습니다.
    • 해결 방법: Gradle 빌드 시 --release 플래그를 사용하여 JDK 설정을 명확히 하거나, 최신 버전의 react-native-reanimated를 유지하며 JDK 17에 맞는 구성 옵션을 체크합니다.
  3. Gradle 및 Android Gradle Plugin 버전:

    • 최신 Gradle 및 Android Gradle Plugin을 사용 중이시므로, 프로젝트의 android/app/build.gradle 및 루트 build.gradle 파일에 잘 맞춰져 있는지 확인이 필요합니다. 빌드가 깨지거나 호환성 문제가 있을 시 해당 설정을 수정합니다.

아래는 비슷한 문제를 겪은 다른 학습자들의 질문입니다. 그들의 해결 방법을 참고하여 문제를 풀어보실 수 있습니다.
- react-native-maps 적용시 안드로이드 빌드 에러
- 안드로이드 시뮬레이터 에러 해결

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

0

강지원

android > build.gradle에 compileOptions을 적용해봤지만 ./gradlew clean을 실행하면 빌드 에러가 발생합니다.

프로젝트를 재생성해보기도 했지만 계속 문제가 발생하네요

react-native-screens 버전 호환 문제

2

153

1

안드로이드 실행 중 Drawer네비게이션과 MapView 성능 문제

0

103

2

해당 강의 부분은 실제 활용하기에 부족해 제가 해결한 방법입니다.

0

96

1

소스코드가 강의 순서랑 다른가요?

0

72

2

현재 Windows에서 VsCode로 작업 중인데 추후에 IOS도 가능하게 하려면

0

115

2

react-native-fast-image는 react 19 버전에서 설치가 안되나요?

0

208

2

SQL Shell의 역할이 무엇인가요?

0

91

1

혹시 해당 강의에서invalidateQueries를 사용한 이유가 있을까요?

0

79

2

빠르게 실행해보고싶습니다.

0

82

1

강의 수강 순서 관련

0

70

1

애뮬레이터 실행 방법

0

99

2

무료 Apple ID로 실기기 테스트 가능한가요?

0

90

2

ios 실기기 연결

0

70

2

npm run ios에러

0

74

1

10월 삭제 예정인 강의는 이유를 알 수 있을까요?

0

101

1

캘린더 개발 후에 navigation 에 대해서 궁금한 점이 있습니다.

0

51

1

안드로이드 위치 권한 이슈 2가지 문의

0

71

1

지도가 보이려면 음.. 작성해주신 스타일과 다르게

0

74

0

제대로 설치한거같은데 안드로이드랑 ios 둘다 앱실행이 안되는것같아요

0

83

3

강의 내용을 보면 전체적으로 function 함수 키워드를 사용하시는데

0

69

2

강의 3-9 에서 useGetRefreshToken 훅 안에 즉시 함수로 처리하는 이유가 궁금합니다!

0

82

2

사내에서 figma.com 업로드 안되나요?

0

96

1

AWS EC2 + RDS 설정

0

85

2

안드로이드 안켜집니다.

0

91

2