> A problem occurred configuring project ':react-native-fbsdk'.
> Could not resolve all dependencies for configuration ':react-native-fbsdk:_debugPublishCopy'.
> Could not find com.Android.support:appcompat-v7:27.0.1.
Searched in the following locations:
file:/<location_to_sdk>/sdk/extras/Android/m2repository/com/Android/support/appcompat-v7/27.0.1/appcompat-v7-27.0.1.pom
file:/<location_to_sdk>/sdk/extras/Android/m2repository/com/Android/support/appcompat-v7/27.0.1/appcompat-v7-27.0.1.jar
file:/<location_to_app>/Android/sdk-manager/com/Android/support/appcompat-v7/27.0.1/appcompat-v7-27.0.1.jar
Required by:
newPtMobile:react-native-fbsdk:unspecified
この問題は、コードに変更を加えたり、新しいパッケージを追加したりせずに、react-native run-Androidを実行したときに今朝発生し始めました。これまでは、正常に機能していました。
"react-native": "0.50.3"、 "react-native-fbsdk": "0.6.3"
Android support libraries
サブフォルダーにsdk/extras/Android/m2repository/com/Android/support
がないことがわかります。すべてのサブフォルダーには、最後のフォルダーとして26.0.0-alpha1
フォルダーがあります。サポートリポジトリを削除し、Android studioを使用して再インストールし、最新のAndroid_m2repository
を手動でダウンロードしようとしましたが、フォルダーがまだありません。
私が理解するのに苦労しているのは、google's maven repository
( https://dl.google.com/dl/Android/maven2/index.html )がたとえばm2repository/com/Android/support/appcompat-v7
27.0.2
という名前のフォルダーが必要です(以前のバージョンもいくつかあります)が、提供されている最新のAndroid_m2repositoryでもそれも欠けています!
https://dl.google.com/Android/repository/Android_m2repository_r48.Zip
私も同じ問題を抱えています。更新することで正常にビルドできました
ROOT:Android/build.gradle
ファイル。
ステップ:
1。 maven.google.com
のmaven
セクションに新しいallprojects
行を追加するだけです。
2。 resolutionStrategy
を追加するとAndroid fbsdkバージョンが4.28.0
に制限されます
allprojects {
repositories {
mavenLocal()
jcenter()
configurations.all {
resolutionStrategy {
force 'com.facebook.Android:facebook-Android-sdk:4.28.0'
}
}
maven {
url "https://maven.google.com"
}
maven {
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
url "$rootDir/../node_modules/react-native/Android"
}
}
}
これとまったく同じ問題で別のスレッドが開いていることがわかります: react-native run-Androidの実行時にエラーが発生します
そこに推奨される解決策は、Sutaniに近いもの、つまり_node_modules/react-native-fbsdk/Android/build.gradle
_を編集して追加することです。
compile('com.facebook.Android:facebook-Android-sdk:4.28.0')
これはreact-native-fbsdkによって導入されたリグレッションではなく、Google Androidライブラリによって導入されたもののようですが、100%明確ではありません。
build.gradle --- app
dependencies {
compile 'com.facebook.react:react-native:+' // support react-native-v0.22-rc+
compile('com.facebook.Android:facebook-Android-sdk:4.+')
}
allprojects {
repositories {
configurations.all {
resolutionStrategy {
force 'com.facebook.Android:facebook-Android-sdk:4.28.0'
}
}
}
}
Solution:
How to fix the file permissions, after loading end react-native start
First, Go to Android folder
cd Android
Now clean the project...
gradlew clean //for Mac users, change gradlew to ./gradlew
Now run the build process again in the root folder
cd ..
react-native run-Android
Solved Issue Happy Coding!
私は同じ問題を抱えています、そして私はで解決しました:
編集_package.json
_そして私は_react-native-fbsdk
_を_react-native-fbsdk": "0.6.3"
_から_react-native-fbsdk": "0.6.0"
_に編集しています
_node_modules/react-native-fbsdk/Android/build.gradle
_に移動します。開く_build.gradle file.
_
compile('com.facebook.Android:facebook-Android-sdk:4++')
をcompile('com.facebook.Android:facebook-Android-sdk:4.22.1')
に変更します。
しかし、これがこの問題の最善の方法かどうかはわかりません、ありがとう
CUR_SPACE=.
culpritLocation=$CUR_SPACE/node_modules/react-native-fbsdk/Android/build.gradle
sed -i -e 's/com.facebook.Android:facebook-Android-sdk:4.+/com.facebook.Android:facebook-Android-sdk:4.26.0/' $culpritLocation
printf "Fixed Could not resolve all dependencies for configuration ':react-native-fbsdk:_debugPublishCopy'.\n> Could not find com.Android.support:appcompat-v7:27.0.1."
printf "fix_rn_fbsdk_google_libraries.sh should be removed at a later time\n"
上記のスクリプトをreact-nativeプロジェクトのルートに配置し、実行権限を追加してから、package.json内のpostinstallプロパティadd ./ your-script-name.sh ;。例:
{
"name": "AppName",
"version": "1.28.14",
"scripts": {
"start": "node node_modules/react-native/local-cli/cli.js start",
"postinstall": "./fix_rn_fbsdk_google_libraries.sh; ./infuse_version.sh;"
},
[..]
}
インストール後のスクリプトに慣れていない場合は、npm install/yarnコマンドを実行した直後に実行されます。
提案されたソリューションはクラウドビルドツールで動作します:)そしてそれは一時的なものです。将来のrn-fbsdkリリースで問題が修正されるはずです。
重要なのは、ケースに表示されるエラーメッセージです。
次の場所で検索:
file:/<location_to_sdk>/sdk/extras/Android/m2repository/com/Android/support/appcompat-v7/27.0.1/
私も同じです。それから私はその場所に行きました:
file:<location_to_sdk>/sdk/extras/Android/m2repository/com/Android/support/appcompat-v7/
そして、私の場合、最新のbuildToolがダウンロードされなかったため、27.0.1
という名前のディレクトリがないことがわかりました。私の場合、私は27.0.0-alpha1
を持っていました。
だから私のアプリbuild.gradle
と
node_modules/react-native-fbsdk/Android/build.gradle
27.0.1
を27.0.0-alpha1
に置き換えたところ、ビルドは成功しました。