当前位置: 首页 > 知识库问答 >
问题:

JNI build gradle在查找ndk目录时失败

鲜于阳成
2023-03-14

我设置了ndk。在mylocal中的dir。属性文件。但是,当grade构建时

task buildNative(type: Exec, description: 'Compile JNI source via NDK') {
        def ndkDir = android.ndkDirectory

抛出一个错误,表示android。未设置ndkDirectory。如何防止自己硬编码ndkDirectory的绝对路径?

共有1个答案

卫博
2023-03-14

自引入NDK支持以来,此属性已多次更改其名称。我不确定它现在已经稳定了“实验”插件。

因此,我推荐Riccardo Ciovati在《如何读取本地文件中定义的属性》中发明的独立于版本的方法。生成中的属性。格拉德尔:

Properties properties = new Properties()
properties.load(project.rootProject.file('local.properties').newDataInputStream())
def ndkDir = properties.getProperty('ndk.dir')
 类似资料:
  • 我试图改变android ndk版本(r18b,r16b,r14b),但有一些错误显示给我。尝试使用4个示例本机代码,但附加错误正在获取所有示例代码。所以我认为gradle版本或android studio版本的错误(可能是不推荐的问题)。 生成命令失败。 使用参数执行进程/home/bhavdip/downloads/android-ndk-r16b-linux-x86_64/android-n

  • 问题内容: 我运行以下命令以查找并替换网站根目录中所有文件中所有出现的“ apple”并替换为“ orange”: 但是它不会通过子目录。 此命令有什么问题? 这是输出的一些行: 问题答案: 您的发现应该看起来像这样,以避免将目录名称发送到sed:

  • 问题内容: 在Python中,我可以使用哪些命令来查找: 1.当前目录(运行Python脚本时我在终端中的位置) 2.我正在执行的文件在哪里? 问题答案: 要获取包含Python文件的目录的完整路径,请在该文件中写入以下内容: (请注意,如果你已经习惯于更改当前的工作目录,则上述方法将不起作用,因为常量的值是相对于当前的工作目录而言的,并且不会被调用更改。) 要获取当前的工作目录,请使用 上面使用

  • 问题内容: 我正在尝试让CocoaPods在Swift项目中工作,但这是我第一次。 我的Podfile是 我运行,但是构建它给了我这个错误: 奇怪的是,这是/ Users / jt / tmp-ios /甚至都不是我所在的目录。 在引用之前,该目录中确实有一些内容尚不清楚。我该如何解决?我怀疑这是Pods.debug.xconfig中的内容,但希望有人以前已经处理过。 问题答案: 对我有用的解决方

  • 我已经用实现了一个Kafka消费者。我的使用者应该使用事件,然后为每个事件向其他服务发送REST请求。只有当REST服务关闭时,我才想重试。否则,我可以忽略失败的事件。 我的容器工厂配置如下: 我使用来设置异常和相应的重试策略。 如果我有机会了解中的哪个记录失败了,那么我将创建的自定义实现,以检查失败的消息是否可重试(通过使用字段)。如果它是不可重试的,那么我将从列表中删除它以重新查找。 关于如何

  • 我正在通过ndk构建一个支持本地构建的Android应用程序。此外,我使用Crashlytics NDK来获取jni和cpp崩溃的崩溃报告。有时,Crashlytics NDK无法为cpp类中的崩溃发送崩溃报告(java和jni工作得很好)。 这似乎是crashlytics ndk框架中的一个错误。 正在使用以下版本: Crashlytics Gradle配置: 有推荐吗?