Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Android Studio中构建Android NDK时出错_Java_Android_Android Studio_Android Ndk_Java Native Interface - Fatal编程技术网

Java 在Android Studio中构建Android NDK时出错

Java 在Android Studio中构建Android NDK时出错,java,android,android-studio,android-ndk,java-native-interface,Java,Android,Android Studio,Android Ndk,Java Native Interface,这是我第一次在Android Studio中使用原生NDK 我试图添加的项目可以在这里找到: 我按照这个指南安装了NDK和所有相关的东西。然后我将jni文件夹添加到app\src\main\jni并将这一行添加到build.gradle android { externalNativeBuild { ndkBuild { path "src/main/jni/Android.mk" } } 当我尝试同步项目时,会出现以下错误:

这是我第一次在Android Studio中使用原生NDK
我试图添加的项目可以在这里找到:

我按照这个指南安装了
NDK
和所有相关的东西。然后我将
jni文件夹
添加到
app\src\main\jni
并将这一行添加到
build.gradle

android {  
    externalNativeBuild {
        ndkBuild {
            path "src/main/jni/Android.mk"
        }
}
当我尝试同步项目时,会出现以下
错误

Build command failed.

Error while executing process C:\Users\ThermalTake i7\AppData\Local\Android\Sdk\ndk-bundle\ndk-build.cmd with arguments {NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=C:\Users\ThermalTake i7\Desktop\StarMe Git\starme_android-code\app\src\main\jni\Android.mk APP_ABI=armeabi-v7a NDK_ALL_ABIS=armeabi-v7a NDK_DEBUG=1 APP_PLATFORM=android-19 NDK_OUT=C:/Users/ThermalTake i7/Desktop/StarMe Git/starme_android-code/app/build/intermediates/ndkBuild/debug/obj NDK_LIBS_OUT=C:\Users\ThermalTake i7\Desktop\StarMe Git\starme_android-code\app\build\intermediates\ndkBuild\debug\lib APP_SHORT_COMMANDS=false LOCAL_SHORT_COMMANDS=false -B -n}
'C:\Users\ThermalTake' is not recognized as an internal or external command,
operable program or batch file.
在搜索了一些答案后,我尝试将这一行添加到
build.gradle

android {
    defaultConfig
            {
                ndk {
                    abiFilters 'armeabi-v7a'
                }
            }
但仍然有同样的错误,我错过了什么

添加
jni
文件夹是我必须做的所有事情吗?

错误消息似乎表明构建正在尝试执行

C:\Users\ThermalTake
而不是你想要的文件


通常这是由于路径中存在空白。两个选项是使用“字符或转义空白(对于windows,请尝试使用“^”字符)来包装路径。

路径来自
Android.mk
其中是
LOCAL\u path:=$(调用我的目录)
因此它得到了空白。我可以在那里更改一些内容吗?这是一个错误,但我没有得到你说的包装路径或转义的部分,因为我使用了前面提到的
$(调用我的目录)
。我不是这里的专家,但我看到了四个选项。尝试像这样包装本地路径:=^“$(调用我的目录)^”或本地路径:=\”$(调用my dir)\”。您可能还想尝试使用单引号。另一个选项可能是尝试使用“subst”命令将每个空格字符替换为“^”或“\”:检查此链接。如果您在linux上,您可能会遇到问题。创建指向文件的符号链接:……最后一个选项是使用不带空格的路径。;)我想建议你使用cmake工具链,而不是依赖的NDK Closure,因为我知道cmake需要加载.txt文件,但是这个项目有
Android.mk
是的,Android.mk是Android原生构建的旧方法,现在推荐cmake用于新的Android原生项目。我提供了一个指向我正在尝试的项目的链接o使用Android.mk,并且它有
Android.mk
,我如何转换它,或者我应该如何处理它?