React-native依赖性错误(com.atlassian.mobile.video okhttp-ws-compat)

时间:2017-05-27 11:25:03

标签: react-native react-native-android

我正在开发一个React-native应用程序,突然间我开始收到以下错误:

  
      
  • 出了什么问题:   配置项目':app'时出现问题。   无法解析配置':app:_debugApk'的所有依赖项。   配置项目':react-native-config'时出现问题。   无法解析配置的所有依赖项':react-native-config:_debugPublishCopy'。   找不到com.atlassian.mobile.video:okhttp-ws-compat:3.7.0-atlassian1。          要求:              cabm8:react-native-config:unspecified> com.facebook.react:反应天然:0.42.3-Atlassian的-1
  •   

我摆脱了模块react-native-config,但仍然面临类似的错误:

  
      
  • 出了什么问题:   配置项目':app'时出现问题。   无法解析配置':app:_debugApk'的所有依赖项。   配置项目':react-native-maps'时出现问题。   无法解析配置的所有依赖项':react-native-maps:_debugPublishCopy'。   找不到com.atlassian.mobile.video:okhttp-ws-compat:3.7.0-atlassian1。          要求:              cabm8:react-native-maps:未指定> com.facebook.react:反应天然:0.42.3-Atlassian的-1
  •   

这个问题似乎与某种方式com.atlassian.mobile.video:okhttp-ws-compat:3.7.0-atlassian1有关。

我尝试重新安装node_modules,删除文件夹androidios,然后使用git恢复它们。我还能尝试什么?

6 个答案:

答案 0 :(得分:23)

build.gradle(不在android/app/build.gradle中)添加此行以强制所有依赖react-native到特定版本:

allprojects {

    configurations.all {
        resolutionStrategy {
            eachDependency { DependencyResolveDetails details ->
                if (details.requested.group == 'com.facebook.react' && details.requested.name == 'react-native') {
                    details.useVersion "0.39.0" // Your real React Native version here
                }
            }
        }
    }
...
}

此配置对我有用。我希望这会有所帮助。

答案 1 :(得分:15)

com.atlassian.mobile.video目前无法在maven上使用。要运行项目,您需要更新它

reactreact-native版本更新到package.json文件中

"react": "16.0.0-alpha.3",
"react-native": "0.43.1",

然后移除node_modules并再次执行npm install

让我知道它是否适合你

答案 2 :(得分:2)

仅供参考,此处跟踪此错误:https://github.com/facebook/react-native/issues/14225

我可以通过指定reactreact-native的以下版本来修复:

  • "反应":" 15.4.1",
  • " react-native":" 0.42.3"

请参阅https://github.com/oblador/react-native-vector-icons/issues/480#issuecomment-304471394

答案 3 :(得分:1)

将其添加到android文件夹中的build.gradle(不在app / build.gradle)文件中。您不想手动添加react-native版本。

allprojects {
    configurations.all {
        resolutionStrategy {
            eachDependency { DependencyResolveDetails details ->
                if (details.requested.group == 'com.facebook.react' && details.requested.name == 'react-native') {
                    def file = new File("$rootDir/../node_modules/react-native/package.json")
                    def version = new groovy.json.JsonSlurper().parseText(file.text).version
                    details.useVersion version
                }
            }
        }
    }
}

我认为这会有所帮助。

答案 4 :(得分:0)

相同的问题,查看源代码但无法在任何地方找到“atlassian”的引用,所以我关闭了wifi(看看是否有任何调用来获取外部资源)并得到以下

  

无法解析配置的所有依赖项':react-native-google-analytics-bridge:_debugPublishCopy'。   无法解析com.atlassian.mobile.video:okhttp-ws-compat:3.7.0-atlassian1。              要求:                  OneUps:react-native-google-analytics-bridge:unspecified> com.facebook.react:反应天然:0.42.3-Atlassian的-1   无法解析com.atlassian.mobile.video:okhttp-ws-compat:3.7.0-atlassian1。   无法获取资源“https://jcenter.bintray.com/com/atlassian/mobile/video/okhttp-ws-compat/3.7.0-atlassian1/okhttp-ws-compat-3.7.0-atlassian1.pom”。

如果您关注该链接,看起来该包已被删除,我猜这会引起问题?

答案 5 :(得分:0)

build root.Gradle强制所有依赖项到特定版本。

allprojects {
 configurations.all {
   resolutionStrategy {
     eachDependency { DependencyResolveDetails details ->
       if (details.requested.group == 'com.facebook.react' && details.requested.name == 'react-native') {
         details.useVersion "0.40.0" // Your React Native version here
       }
     }
   }
 }
  }