Javascript React本机方法不会重写或实现超类型中的方法

Javascript React本机方法不会重写或实现超类型中的方法,javascript,java,android,react-native,Javascript,Java,Android,React Native,我在android上遇到了这个错误 Error:(15, 5) error: method does not override or implement a method from a supertype; 存档 .../node_modules/react-native-package-manager/android/src/main/java/com/rnlib/packagemanager/RNPackageManager.java IOS端工作正常。我安装了React Native

我在android上遇到了这个错误

 Error:(15, 5) error: method does not override or implement a method from a supertype;
存档

.../node_modules/react-native-package-manager/android/src/main/java/com/rnlib/packagemanager/RNPackageManager.java
IOS端工作正常。我安装了React Native Maps,之后它似乎开始失败,但我不确定。我用纱线和rnpm来连接包裹<代码>反应本机链接

现在,该文件如下所示:

package com.rnlib.packagemanager;

import com.facebook.react.ReactPackage;
import com.facebook.react.bridge.JavaScriptModule;
import com.facebook.react.bridge.NativeModule;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.uimanager.ViewManager;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class RNPackageManager implements ReactPackage {

    @Override
    public List<Class<? extends JavaScriptModule>> createJSModules() {
        return Collections.emptyList();
    }

    @Override
    public List<ViewManager> createViewManagers(ReactApplicationContext reactContext) {
        return Collections.emptyList();
    }

    @Override
    public List<NativeModule> createNativeModules(
            ReactApplicationContext reactContext) {
        List<NativeModule> modules = new ArrayList<>();

        modules.add(new Module(reactContext));

        return modules;
    }
}

我认为您的问题是createJSModules()上有@Override注释。该方法不在ReactPackage接口中。尝试删除该方法


编辑:我相信该方法已在0.47中从接口中删除。

我认为您的问题在于createJSModules()上有@Override注释。该方法不在ReactPackage接口中。尝试删除该方法


编辑:我相信该方法已在0.47中从界面中删除。

但在更新react并重新安装所有节点模块后,该功能如何仍然存在?我不确定我是否理解您的问题。此问题与node_modules目录无关。lib开发人员尚未更新Java代码以与RN 0.47+兼容。升级React时,com.facebook.React.ReactPackage的新版本不再定义createJSModules()(请参阅)。如果一个子类声明了一个带有覆盖注释的方法,而该方法没有父类,则会导致此错误?在路上是这么说的?我理解带有额外覆盖方法的子类如何会导致问题,但当我删除节点_模块并重新安装它们时,它不应该在没有该方法的情况下获得文件的新版本吗?如果没有,我如何才能在没有覆盖注释方法的情况下获得新版本?但是在更新react和重新安装所有node_模块后,该功能如何仍然存在?我不确定我是否理解您的问题。此问题与node_modules目录无关。lib开发人员尚未更新Java代码以与RN 0.47+兼容。升级React时,com.facebook.React.ReactPackage的新版本不再定义createJSModules()(请参阅)。如果一个子类声明了一个带有覆盖注释的方法,而该方法没有父类,则会导致此错误?在路上是这么说的?我理解带有额外覆盖方法的子类如何会导致问题,但当我删除节点_模块并重新安装它们时,它不应该在没有该方法的情况下获得文件的新版本吗?如果没有,我如何在没有覆盖注释方法的情况下获得新版本?
{
  "name": "wayfarer",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "start": "react-native start",
    "android": "react-native run-android",
    "ios": "react-native run-ios",
    "test": "jest",
    "lint": "eslint . --fix",
    "clean_cache": "npm start -- --reset-cache",
    "clean": "rm -rf $TMPDIR/react-* && watchman watch-del-all && npm cache clean"
  },
  "jest": {
    "preset": "react-native"
  },
  "dependencies": {
    "global": "^4.3.2",
    "haversine": "^1.1.0",
    "immutable": "^3.8.2",
    "lodash": "^4.17.4",
    "prop-types": "^15.6.0",
    "react": "16.1.0",
    "react-native": "^0.50.3",
    "react-native-gesture-responder": "^0.1.1",
    "react-native-maps": "^0.17.1",
    "react-native-package-manager": "^0.0.1",
    "react-native-vector-icons": "^4.4.2",
    "react-navigation": "^1.0.0-beta.19",
    "react-redux": "^5.0.6",
    "redux": "^3.7.2",
    "redux-thunk": "^2.2.0",
    "remote-redux-devtools": "^0.5.12",
    "vectors": "^0.1.0"
  },
  "devDependencies": {
    "babel-eslint": "^8.0.1",
    "babel-jest": "^21.2.0",
    "babel-preset-react-native-stage-0": "^1.0.1",
    "eslint": "^4.9.0",
    "eslint-config-airbnb-base": "^12.1.0",
    "eslint-plugin-import": "^2.8.0",
    "eslint-plugin-jsx-a11y": "^6.0.2",
    "eslint-plugin-react": "^7.4.0",
    "eslint-plugin-react-native": "^3.1.0",
    "jest": "^21.2.1",
    "react-test-renderer": "^16.0.0",
    "remotedev-rn-debugger": "^0.8.3"
  },
  "settings": {
    "import/resolver": {
      "node": {
        "extensions": [
          ".js",
          ".android.js",
          ".ios.js"
        ]
      }
    }
  }
}