当使用react-native-chart-android时,使用react-native run-android构建失败

时间:2017-06-09 14:09:32

标签: react-native react-native-android

我的反应本机运行android失败,出现以下错误:

  

C:\用户\阿沛\阵营\ infp_devices \机器人\应用\ SRC \主\的java \ COM \ infp_devices \ MainActivity.java:19:   错误:找不到符号       protected List getPackages(){                 ^符号:类列表位置:类MainActivity C:\ Users \ abhay \ React \ infp_devices \ android \ app \ src \ main \ java \ com \ infp_devices \ MainActivity.java:19:   错误:找不到符号       protected List getPackages(){                      ^符号:类ReactPackage位置:类MainActivity   C:\ Users \用户阿沛\阵营\ infp_devices \机器人\应用\ SRC \主\的java \ COM \ infp_devices \ MainActivity.java:18:   error:方法不会覆盖或实现超类型的方法       @覆盖       ^ C:\ Users \ abhay \ React \ infp_devices \ android \ app \ src \ main \ java \ com \ infp_devices \ MainActivity.java:21:   错误:找不到符号           新的MainReactPackage(),               ^符号:类MainReactPackage位置:类MainActivity   C:\ Users \用户阿沛\阵营\ infp_devices \机器人\程序\ SRC \主\ java中的\ com \ infp_devices \ MainActivity.java:20:   错误:找不到符号         return Arrays.asList(                        ^符号:类ReactPackage位置:类MainActivity   C:\ Users \用户阿沛\阵营\ infp_devices \机器人\程序\ SRC \主\ java中的\ com \ infp_devices \ MainActivity.java:20:   错误:找不到符号         return Arrays.asList(                ^符号:变量数组位置:类MainActivity 6错误:app:compileDebugJavaWithJavac FAILED

     

失败:构建因异常而失败。

     
      
  • 出了什么问题:任务'执行失败':app:compileDebugJavaWithJavac'。

         
        

    编译失败;有关详细信息,请参阅编译器错误输出。

      
  •   
  • 尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获得更多日志输出。

  •   
     

建立失败

我做了以下更改:

在android / setting.gradle中:

include ':react-native-chart-android'
project(':react-native-chart-android').projectDir = new 
File(rootProject.projectDir, '../node_modules/react-native-chart-
android/android')

在android / app / build.gradle中:

dependencies {
    compile fileTree(dir: "libs", include: ["*.jar"])
    compile "com.android.support:appcompat-v7:23.0.1"
    compile "com.facebook.react:react-native:+"  // From node_module
    compile project(':react-native-chart-android') //Changes to the code
}

我的整个android / app / src / main / java / com / xxxxxxx / MainActivity.java,(XXXXXXX是我的应用名称),如下所示:

package com.xxxxxxx;  // xxxxxxx is my app name

import com.facebook.react.ReactActivity;

import cn.mandata.react_native_mpchart.MPChartPackage;  // <--- import

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 "xxxxxxx";   //xxxxxxx is my app name
        }

    @Override
    protected List<ReactPackage> getPackages() {
      return Arrays.<ReactPackage>asList(
        new MainReactPackage(),
        new MPChartPackage());
}
}

我的应用程序代码如下所示:

import React from 'react';
import { View, Text } from 'react-native';

import {
  BarChart,
  CombinedChart
} from 'react-native-chart-android';

import { getBarData } from './graphComponent';


const graphDisplay = (props) => {
  // const myData = getBarData();
  return (
    <View style={{flex:1}}>
      <BarChart style={{flex:1}} data={getBarData()} />
   /View>
    );
});

export default graphDisplay;

我在BarChart标记行上得到致命的ESLint错误为“未终止的JSX内容(致命)”。但是我还没有解决它。不确定它是否与此问题相关。

请帮忙

编辑:

我导入的getBarData()函数的代码如下:

export function getBarData() {
  const data = {
    xValues: ['1', '2', '3'],
    yValues: [
      {
        data: [4.0, 5.0, 6.0],
        label: 'test1',
        config: {
          color: 'blue'
        }
      },
      {
        data: [4.0, 5.0, 6.0],
        label: 'test2',
        config: {
          color: 'red'
        }
      },
      {
        data: [4.0, 5.0, 6.0],
        label: 'test2',
        config: {
          color: 'yellow'
        }
    }
    ]
  };
  return (data);
}

0 个答案:

没有答案