从github下载,以使moudle'reactandroid',然后:
Error:(687) Android NDK: Module reactnativejnifb depends on undefined modules: fbjni
Error:(700) *** Android NDK: Aborting (set APP_ALLOW_MISSING_DEPS=true to allow missing dependencies)
Error:Execution failed for task ':ReactAndroid:buildReactNdkLib'.
Process 'command '/Users/sumomokawaakira/Downloads/adt-bundle-mac-x86_64/sdk/ndk-bundle/ndk-build'' finished with non-zero exit value 2
我也遇到了这个问题。我认为您可以通过确保使用Android NDK(android-ndk-r10e
)的精确版本来解决它。
还确保您设置了正确完成的环境变量和工作。
(对于以后的步骤,我的价值是值得的,但希望这应该可以帮助您通过此特定问题)
您必须将路径更改为android_ndk才能在本地运行gradle命令。
export ANDROID_NDK=/Users/your_unix_name/android-ndk/android-ndk-r10e
就我而言,我将NDK文件放在/Users/tomo/temp/android-ndk-r10e
所以 导出android_ndk =/用户/tomo/temp/android-ndk-r10e
或如果您不想更改Android_ndk,则可以更新ReactAndroid/build.gradle
def findNdkBuildFullPath() {
// we allow to provide full path to ndk-build tool
if (hasProperty('ndk.command')) {
return property('ndk.command')
}
// or just a path to the containing directory
if (hasProperty('ndk.dir')) {
def ndkDir = property('ndk.dir')
return new File(ndkDir, getNdkBuildName()).getAbsolutePath()
}
// ** Add below. should be before if (System.getenv('ANDROID_NDK') clause **
Properties properties = new Properties()
properties.load(project.rootProject.file('ReactAndroid/local.properties').newDataInputStream())
if (properties.hasProperty('ndk.dir')) {
def ndkDir = properties.getProperty('ndk.dir')
return new File(ndkDir, getNdkBuildName()).getAbsolutePath()
}
if (System.getenv('ANDROID_NDK') != null) {
def ndkDir = System.getenv('ANDROID_NDK')
return new File(ndkDir, getNdkBuildName()).getAbsolutePath()
}
def ndkDir = android.hasProperty('plugin') ? android.plugin.ndkFolder :
plugins.getPlugin('com.android.library').hasProperty('sdkHandler') ?
plugins.getPlugin('com.android.library').sdkHandler.getNdkFolder() :
android.ndkDirectory.absolutePath
if (ndkDir) {
return new File(ndkDir, getNdkBuildName()).getAbsolutePath()
}
return null
}
然后更新ReactAndroid/local.properties
ndk.dir=/Users/tomo/temp/android-ndk-r10e
sdk.dir=/Applications/sdk
并从Android Studio运行应用
for react Native 7.0
尝试:
- rm -rf node_modules&&纱线安装(为我工作)
或
这些步骤:
- 关闭Android Studio
- add android.disableAutomaticComponentCreation = true in android/gradle.properties
- 重新开放项目和构建。
删除节点模块,Yarn.lock,Android Studio或Repair IDE中的无效缓存(所有步骤),package.lock.lock删除,
- 下一个运行脚本"纱线安装"
- 再次将Android Studio拖入Android Studio,
- 同步Gradle文件错误将消失