Задача: реакция-собственные-экраны: ошибка javaPreCompileDebug в React Navigation 5.x - PullRequest
4 голосов
/ 09 февраля 2020

Я создал проект React-Native с помощью следующей команды:

react-native init samplerouting

Затем я включил навигацию, выполнив следующие действия ( на основе документации ):

1-

npm install @react-navigation/native

2-

npm install 
react-native-reanimated 
react-native-gesture-handler 
react-native-screens 
react-native-safe-area-context 
@react-native-community/masked-view

3 - Добавьте следующие две строки в секцию dependencies в android/app/build.gradle

implementation 'androidx.appcompat:appcompat:1.1.0-rc01'
implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0-alpha02'

4-я изменил MainActivity.java, как показано ниже

package com.samplerouting;

import com.facebook.react.ReactActivity;
import com.facebook.react.ReactActivityDelegate;
import com.facebook.react.ReactRootView;
import com.swmansion.gesturehandler.react.RNGestureHandlerEnabledRootView;

public class MainActivity extends ReactActivity {

  /**
   * Returns the name of the main component registered from JavaScript. This is used to schedule
   * rendering of the component.
   */
  @Override
  protected String getMainComponentName() {
    return "samplerouting";
  }

  @Override
  protected ReactActivityDelegate createReactActivityDelegate() {
    return new ReactActivityDelegate(this, getMainComponentName()) {
      @Override
      protected ReactRootView createRootView() {
        return new RNGestureHandlerEnabledRootView(MainActivity.this);
      }
    };
  }

}

5-Затем добавьте следующее в начало моего файла ввода (индекс. js)

import 'react-native-gesture-handler';

Fini sh, я хочу запустить свой проект только на устройстве android, поэтому я отклоняю следующие шаги:

cd ios
pod install
cd ..

Теперь, когда я запускаю свой проект

react-native start
react-native run-android 

I получить следующую ошибку

Задача: реагировать на собственные экраны: javaPreCompileDebug FAILED

В этой сборке использовались устаревшие функции Gradle, что делает его несовместимым с Gradle 6.0 , Используйте «--warning-mode all» для отображения отдельных предупреждений об устаревании.

ПРИМЕЧАНИЕ. Я попробовал следующую команду, но она не работает

cd android && gradlew clean

мой пакет. json:

{
  "name": "samplerouting",
  "version": "0.0.1",
  "private": true,
  "scripts": {
    "android": "react-native run-android",
    "ios": "react-native run-ios",
    "start": "react-native start",
    "test": "jest",
    "lint": "eslint ."
  },
  "dependencies": {
    "@react-native-community/masked-view": "^0.1.6",
    "@react-navigation/native": "^5.0.0",
    "react": "16.9.0",
    "react-native": "0.61.5",
    "react-native-gesture-handler": "^1.5.6",
    "react-native-reanimated": "^1.7.0",
    "react-native-safe-area-context": "^0.7.2",
    "react-native-screens": "^2.0.0-beta.2"
  },
  "devDependencies": {
    "@babel/core": "7.8.4",
    "@babel/runtime": "7.8.4",
    "@react-native-community/eslint-config": "0.0.5",
    "babel-jest": "24.9.0",
    "eslint": "6.8.0",
    "jest": "24.9.0",
    "metro-react-native-babel-preset": "0.56.4",
    "react-test-renderer": "16.9.0"
  },
  "jest": {
    "preset": "react-native"
  }
}

1 Ответ

3 голосов
/ 12 февраля 2020

Эта ошибка связана с Gradle.

. Поэтому я обновил свой SDK, поэтому он отлично работал.

Нет необходимости говорить:

In Environment-variable Мы должны добавить следующие 3 переменные:

1- ANDROID_HOME: (Ваш путь к SDK) J: \ ReactNative \ AndroidSDK \ Android \ Sdk

2- JAVA_HOME: (ваш путь к JDK) C: \ Program Files \ Java \ jdk1.8.0_231

3- инструменты платформы: (ваш PLATFORM-TOOLS путь) J: \ ReactNative \ AndroidSDK \ Android \ Sdk \ platform-tools

ПРИМЕЧАНИЕ: Путь выше на моем компьютере, укажите собственный путь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...