问题标签 [gradle-experimental]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
346 浏览

android-studio - 无法使用新的实验性 gradle 插件 android studio 构建 shaderc

我正在尝试从 NDK 12 的第三方文件夹构建 shaderc。它使用“com.android.tools.build:gradle:2.1.3”正确构建,但为“com.android.tools.build:gradle-experimental:0.8+”提供以下错误

process_begin: CreateProcess(NULL, "", ...) 失败。C:/SDKL/ndk-bundle/sources/third_party/shaderc/third_party/Android.mk:124: *** 目标模式不包含“%”。停止。

失败的

FAILURE:构建失败并出现异常。

出了什么问题:任务':framework:generateJsonModelRelease'执行失败。构建命令失败。使用参数执行“C:\SDKL\ndk-bundle\ndk-build.cmd”时出错 {NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=C:\GVRVV\GVRf\Framework\framework\src\main\jni\Android.mk NDK_APPLICATION_MK=C :\GVRVV\GVRf\Framework\framework\src\main\jni\Application.mk APP_ABI=armeabi-v7a NDK_ALL_ABIS=armeabi-v7a NDEBUG=0 APP_PLATFORM=android-19 NDK_OUT=C:\GVRVV\GVRf\tools\Framework\ framework.externalNativeBuild\ndkBuild\release\obj NDK_LIBS_OUT=C:\GVRVV\GVRf\tools\Framework\framework\build\intermediates\ndkBuild\release\lib -j4 NDK_DEBUG=1 APP_SHORT_COMMANDS=false LOCAL_SHORT_COMMANDS=false -n} process_begin: CreateProcess (NULL, "", ...) 失败。

C:/SDKL/ndk-bundle/sources/third_party/shaderc/third_party/Android.mk:124: *** 目标模式不包含“%”。停止。

链接:https ://developer.android.com/ndk/guides/graphics/shader-compilers.html

0 投票
2 回答
4113 浏览

android - 如何从 Gradle Experimental Plugin 中的任务访问 versionCode

我想从 gradle 任务中访问 defaultConfig 中的 versionCode 和 versionName。我正在使用实验性的 gradle 插件。我尝试了 model.android.defaultConfig.versionCode 但它无法识别 android...

0 投票
2 回答
975 浏览

android - 将 Native Module 从 Gradle Experimental Plugin 迁移到 Stable Gradle

我有一个 Android 库项目,它通过Android NDK包含在 C/C++ 中。该项目是半年前开始的,所以我们选择使用Experimental Plugin是因为对 NDK 的支持更好。我现在正在使用gradle-experimental:0.8.2。我有一个com.android.model.native模块,我想将它迁移到gradle:2.2.0. 我在Gradle Android Plugin DSL中看到的唯一选项是:

  • AppExtension:com.android.application项目的android扩展。
  • LibraryExtension:com.android.library项目的 android 扩展。
  • TestExtension:com.android.test项目的android扩展。

所以问题是如何用稳定的 gradle 插件在 gradle 中制作一个纯原生模块?

这是我当前的本机模块:

0 投票
0 回答
977 浏览

android - JaCoCo 测试覆盖率无法确定任务“:createDebugAndroidTestCoverageReport”的依赖关系

在执行“gradle createDebugCoverageReport”期间出现以下问题:

出了什么问题:无法确定任务“:createDebugAndroidTestCoverageReport”的依赖关系。java.lang.NullPointerException(没有错误信息)

尝试:使用 --info 或 --debug 选项运行以获得更多日志输出。

例外是:

我已经尝试了所有提示:如何使用 Android gradle 插件 0.10.0 或更高版本获取 jacoco 覆盖率报告?. 唯一的区别是我使用的是 0.8.3 版的实验性 gradle 插件。

任何想法?谢谢。

0 投票
0 回答
290 浏览

android - 带有gradle实验的android FCM给出'FirebaseApp初始化不成功'

我在我的项目中使用 gradle 实验。并且有一些本机 c/c++ 代码。我做了一个没有任何 c/c++ 代码的普通项目,并实现了 FCM,它正常工作并给出了一个 fcm 令牌。

但是当我使用 gradle Experiment 即classpath 'com.android.tools.build:gradle-experimental:0.8.3' 时,它会给出 'FirebaseApp 初始化不成功' 任何帮助将不胜感激。

}

0 投票
0 回答
180 浏览

android - android-maven-gradle-plugin + gradle-experimental

在我的 android 库项目中,我com.github.dcendents:android-maven-gradle-plugin:1.5用来将我的库安装到我的本地 maven 存储库中,这一直运行良好。现在,由于各种与 NDK 相关的原因,我不得不切换到gradle-experimental-0.8.2 插件。这个版本的 gradle 插件使用了新的语法,例如model块围绕着android块。

问题是,当使用这种新语法时,我无法让我的 Maven 工件任务工作,例如sourcesJar直接从示例中获取的任务:

这不再有效,因为没有 block android。我以为我只需要更改为新语法,例如model.android.sources.main.java.source.srcDirs,但没有运气。事实上,它说could not get unknown property 'android' for task 'lib:model' of type org.gradle.api.reporting.model.ModelReport

我也有更简单的陈述,例如

这也不适用于android.defaultConfignor model.android.defaultConfig

我在这里做错了什么?当我无法像以前使用稳定的 gradle 版本那样引用块中定义的变量时,感觉就像我误解了 gradle/groovy 的基本工作原理。我认为该android块只是在model块内向下移动了一级间接,那么为什么我不能引用类似的东西model.android.defaultConfig.versionName

0 投票
1 回答
357 浏览

android - 每个 ABI 的不同库搜索路径

使用 Android Gradle Experimental 插件版本 0.9.1。我需要为每个 ABI 设置不同的静态库搜索路径,有什么方法可以实现吗?这是build.gradle我没有正确的片段,在我添加的行中,ldFlags我想添加-L编译器键,路径名包含特定 ABI 的名称:

我该如何实现这个getAbi()功能?

0 投票
1 回答
1330 浏览

android - 使用 android gradle experimental 链接到 .aar 文件中的 .so 文件

我正在使用 android gradle 实验插件来构建一个带有一些本机代码的应用程序模块。此本机代码使用带有预构建 .so 文件的库,我通过 android 库模块将其捆绑到 .aar 文件中。.aar 文件构建良好,但是如何将 app 模块中的本机代码模块链接到 .aar 模块中预构建的 .so 文件?gradle 实验文档没有提到这种情况。

另外,如果可能的话,我想将包含文件打包到 .aar 文件中(尽管它们不应该与最终应用程序一起打包)。

在 /prebuiltlib 中:

这是gradle文件:

/prebuiltlib/build.gradle

这里是 /app/build.gradle,注意 ??? 我不知道该放什么:

0 投票
0 回答
314 浏览

android - “实验” gradle 插件在本机库链接期间出现“未定义的引用”错误

我尝试使用基于“实验性”com.android 的新构建系统创建一个简单的 JNI 应用程序。模型.application (com.android.tools.build:gradle-experimental:0.9.2)。

./gradle/wrapper/gradle-wrapper.properties:

./build.gradle:

./app/build.gradle:

./app/src/main/res/layout/activity_main.xml:

./app/src/main/res/layout/content_main.xml:

./app/src/main/java/com/lamersoft/androidcppsandbox/MainActivity.java:

./app/src/main/jni/main.cpp:

结果

修改

为了重现该问题,我将在单独的文件夹中创建一个 C++ 类,并通过添加带有 cppFlag“-I”的路径将其包含到项目中。

./app/src/main/externalCPP/SampleClass.h:

./app/src/main/externalCPP/SampleClass.cpp:

./app/src/main/jni/main.cpp:

./app/build.gradle:

只添加了一行:

结果

如您所见,该项目无法编译。它失败并出现错误: undefined reference to 'SampleClass::count()'错误: undefined reference to 'SampleClass::SampleClass(int)'

当我尝试通过以这种方式定义项目中使用第三方预构建静态库时,也会发生同样的情况:

有人如何使用实验性gradle 插件解决这个问题吗?

0 投票
1 回答
596 浏览

android - Android 实验性 gradle 插件 & Android Studio 3

我有一个 Android 项目,我们使用实验性 Gradle 插件已经有一段时间了。随着 Android Studio 3 的发布和 Gradle 4 的迁移,我有几个问题

  1. 仅仅看,几个月内没有人添加新的实验性 gradle 版本,最后一个版本 11 alpha 是 3 个月前。这个还在维护吗?

  2. 有没有比实验性 Gradle 插件更好的方法来进行复杂的 NDK 构建?我做了一些研究,看起来有一种方法可以拥有一个 cMake txt 文件并像他们对这个 Samba 客户端所做的那样调用它 https://github.com/google/samba-documents-provider/tree/master/app

当我说复杂的 NDK 构建时,我将许多 C++ 库放在一起。我有一堆自定义 C++ 代码,我有几个 3rd 方库,它们有自己的代码以及共享库。而且我有许多 jni 接口文件来管理它。

我缩短了这个例子,但我有 12 个这样的文件。

然后我有以下 NDK 部分

`

然后也在gradle中列出我所有的jni来源