【发布时间】:2018-02-18 10:35:23
【问题描述】:
我有关于 NDK-Build 的问题。那是失败信息:
Error:Execution failed for task ':app:ndkBuild'.
> A problem occurred starting process 'command 'ndk-build.cmd''
我已经测试了一些修复程序,但它不起作用。我不知道我还能做什么。我希望你能帮助解决我的问题:
这里是 build.gradle:
import org.apache.tools.ant.taskdefs.condition.Os
apply plugin: 'com.android.application'
android {
compileSdkVersion 14
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "teaonly.droideye"
targetSdkVersion 14
ndk {
moduleName "MediaEncoder"
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
sourceSets.main {
jni.srcDirs = [] // This prevents the auto generation of Android.mk
jniLibs.srcDirs = ['src/main/jniLibs']
}
//Call regular ndk-build(.cmd) script from app directory
task ndkBuild(type: Exec) {
if (Os.isFamily(Os.FAMILY_WINDOWS)) {
commandLine 'ndk-build.cmd', '-C', file('src/main/jniLibs').absolutePath
} else {
commandLine 'ndk-build', '-C', file('src/main/jniLibs').absolutePath
}
}
tasks.withType(JavaCompile) {
compileTask -> compileTask.dependsOn ndkBuild
}
}
dependencies {
compile files('libs/java_websocket.jar')
}
这是我的 local.properties:
ndk.dir=C\:\\Users\\Markus\\AppData\\Local\\Android\\Sdk\\ndk-bundle
sdk.dir=C\:\\Users\\Markus\\AppData\\Local\\Android\\Sdk
这是我的项目:
【问题讨论】:
-
您可以使用Android Studio内置的C++ support,不再需要定义自己的ndkBuild任务。
-
我知道,但这不是我自己的项目。
-
如果您不想接触文件,请确保
C:\Users\Markus\AppData\Local\Android\Sdk\ndk-bundle在 PATH 上 -
我在路径上查了一下,找到了ndk-build.cmd
-
尝试运行
gradlew assembleRelease --debug(或--stacktrace),看看能否获得有关错误的更详细信息。
标签: android android-studio android-ndk build.gradle