React Native Android 빌드 오류 MainActivity.java:29 : 오류 : 기호를 찾을 수 없습니다.
React Native Android 앱을 컴파일하려고 할 때이 오류가 발생합니다. Android 앱은 BuildConfig.DEBUG를 확인할 수 없습니다.
:app:processDebugJavaRes UP-TO-DATE
:app:compileDebugJavaWithJavac
/Users/amirsharif/mobile-rappad/android/app/src/main/java/com/rappadmobile/MainActivity.java:29: error: cannot find symbol
.setUseDeveloperSupport(BuildConfig.DEBUG)
^
symbol: variable BuildConfig
location: class MainActivity
>1 error
:app:compileDebugJavaWithJavac FAILED
간단히 true로 설정하여 일시적으로 해결할 수 있습니다. 이것은 내가 응용 프로그램 이름을 변경 한 후에 발생했을 수 있습니다 (내가 시도한 작업이기 때문에).
Gradle로 무언가를 변경해야 올바른 종류의 파일이 다시 생성됩니다.
/**
* Automatically generated file. DO NOT MODIFY
*/
package com.app;
public final class BuildConfig {
public static final boolean DEBUG = Boolean.parseBoolean("true");
public static final String APPLICATION_ID = "com.rappadmobile";
public static final String BUILD_TYPE = "debug";
public static final String FLAVOR = "";
public static final int VERSION_CODE = 1;
public static final String VERSION_NAME = "1.0";
}
Android가 특정 파일을 찾을 위치와 특정 파일을 연결하는 방법을 아는 방법은 AndroidManifest.xml에 설정된 필드를 사용하는 것입니다. React Native 프로젝트의 기본 설정은 모든 것을. (name-of-resource)로 참조하므로 <manifest>
태그에 설정된 패키지 이름과 관련하여 모든 것이 해결됩니다 . 따라서 모든 것이 즉시 작동하고 모든 것이 예상대로 생성 되려면 MainActivity.java의 경로가 패키지 이름과 동일해야합니다.
예:
앱 패키지 이름 : com.mycompanyname.myappname
MainActivity.java의 위치 : android/app/src/main/java/com/mycompanyname/myappname/MainActivity.java
나는 같은 문제가 있었고 단순히 다음 import 문을 추가하여 해결되었습니다 MainApplication.java
.
import com.facebook.react.BuildConfig;
나는 react-native upgrade
. 내 문제는 이전 패키지 이름을 참조하는 이전 파일이 있다는 것입니다 (에서 앱 이름을 변경했기 때문에 package.json
). 그것들을 삭제하면 문제가 해결되었습니다.
당신의에서 MainActivity.java
, 당신은 첫 번째 줄은 확인하실 수 있습니다package com.YOU_APP_NAME;
이 줄이 없으면 추가해야합니다.
제 경우에는 BUCK 파일과 Manifest 파일 모두에서 패키지 이름을 변경했습니다.
BUCK 파일에서 다음과 같이 변경합니다.
android_build_config(
name = "build_config",
package = "NEW_PACKAGE_NAME",
)
android_resource(
name = "res",
package = "NEW_PACKAGE_NAME",
res = "src/main/res", )
react-native를 업그레이드하면이 오류가 해결되었습니다.
react-native upgrade
이제 다시 빌드하십시오-
react-native run-android
몇 가지 답변의 조합이 도움이되었습니다. 요약 :
- Java 패키지 이름이 올바른지 확인하십시오
MainApplication.java
. - gradle 빌드 파일에서 패키지 이름 업데이트
- 매니페스트 파일에서 패키지 이름 업데이트
BUCK
파일 에서 패키지 이름 업데이트- make sure the path to you javascript sources is a folder structure that matches your package name
Delete the old files that might be there in android/app/src/main/java/com Just keep the file with the new name of the app. Then do react-native upgrade
.
Check if you have missed installing the react-native-gesture-handler.
with yarn
yarn add react-native-gesture-handler
or with npm
npm install --save react-native-gesture-handler
Then
react-native link react-native-gesture-handler
'IT박스' 카테고리의 다른 글
ScrollView의 끝 감지 (0) | 2020.11.19 |
---|---|
401 Unauthorized : 잘못된 자격 증명으로 인해 액세스가 거부되었습니다. (0) | 2020.11.19 |
디버깅을 위해 Android 기기가 USB에 연결되어 있지 않습니다 (Android 스튜디오). (0) | 2020.11.19 |
Sinon JS“이미 래핑 된 ajax 래핑 시도” (0) | 2020.11.18 |
T-SQL의 PIVOT 함수 이해 (0) | 2020.11.18 |