问题标签 [android-jack-and-jill]

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 投票
2 回答
479 浏览

gradle - Jack 编译卡在 AndroidStudio 2.3 上

我今天已将我的 AndroidStudio 升级到最新的稳定版本 2.3(带有 gradle 插件 2.3.0 和 gradle 3.3):现在,我无法构建在 AndroidStudio 2.2.3 下运行良好的项目。

当我尝试时,只要我不杀死我的 java 平台进程,我就会陷入 :app:transformJackWithJackForDebug 。

我猜这与这篇文章的问题相同,但在稳定版本中。

任何帮助将不胜感激 :)

0 投票
0 回答
318 浏览

android - 使用 Jack 和 Retrolambda 运行应用程序时出现问题

我最近在使用 Retrolambda 时尝试在我的应用程序中调试时遇到了很多问题,因为我想在我的 Gradle 中包含 Jack 以进行调试。

因此,我一直在经历这个错误,但我仍然没有找到解决它的方法。

我检查了不同的帖子以寻找解决方案:

Android Studio:Gradle - 构建失败 - 任务“:dexDebug”执行失败

使用 jack 时,Lambda 表达式在 Android 中因 IncompatibleClassChangeError 而崩溃

建议为运行 jack 的 Gradle 守护进程使用更大的堆

但是没有一个解决方案可以解决我的问题。现在我的 Gradle 看起来像:

我的appgradle

0 投票
0 回答
267 浏览

android - Android 上的 Lambda 调用随机失败

刚开始在一个新项目中使用 lambda,当应用程序崩溃并出现以下堆栈跟踪时,该问题一直存在:

有趣的是它有时会起作用,但我仍然不知道是什么让它起作用,什么东西坏了。

jackOptions并且1.8 compatibility都在 build.gradle 中启用。compileSdkVersion是 25。设备运行的是 Android 5.0。生成的 apk 已com.test.-$Lambda$3定义此类。

除了完全启用 lambda 之外,还有什么需要做的吗?如何调试此问题以找出真正的根本原因?

更新 1:

这听起来很奇怪,但看起来编译器与 lambda 调用混淆了。假设生成的 APK 已经定义$Lambda$1:Runnable并且$Lambda$2:Consumer我看到了特定的方法调用$Lambda$1,而它必须是$Lambda$2.

0 投票
0 回答
95 浏览

android - Jack 编译器和 JaCoCo 代码覆盖率

我在我的 Android 应用程序中使用千斤顶编译器。以下是如何将 JaCoCo 与 Jack 编译器一起使用的描述。但我不明白。有人谈论在我的 make 命令中更改某些内容。但我使用gradle。还是我必须构建自己的 Android SDK 才能获得 JaCoCo 对 jack 的支持?

0 投票
0 回答
756 浏览

android-jack-and-jill - 来自 jar 文件的 Lambda 需要编译类路径上的接口,未知接口是 java.util.function.Predicate

我有一个外部 jar 库。我可以在 intellij idea 中导入此文件,而 java 8 没有任何问题。但是当我将此文件添加到 android studio 时,我得到了这个错误

错误:ApiClass.java:114-115:来自 jar 文件的 Lambda 需要编译类路径上的接口,未知接口是 java.util.function.Predicate

任何人都可以帮助我吗?

构建gradle

和 gradle 属性:

0 投票
1 回答
782 浏览

android - 任务 ':app:transformClassesWithPreJackPackagedLibrariesForArmv7aDebug' 执行失败

因此,当我单击 Android Studio 上的播放按钮以部署到我的设备时,我遇到了这个问题,但我不知道如何解决这个问题。请参阅随附的打印照片: 摇篮消息

我确实采取了某些行动:

  1. 重建项目(构建没有问题)
  2. 清理项目,(在这种情况下,它无法清理项目)
  3. 在终端上运行 gradlew clean(无法清理)并显示消息无法为 ':app:clean' 执行清理
  4. 制作项目(无结果)
  5. 无效的缓存并重新启动。

这些行动都没有生效!

欢迎任何想法和解决方案!提前致谢!

0 投票
1 回答
2175 浏览

java - 从 jack 迁移到本机 Java 8

我正在尝试在我的 Android 项目中使用 lambda 表达式和流。我将streamsupport库用于流,将本机 Java 8 用于 lambda 表达式。为了能够使用 Java 8 功能,我需要添加

此代码在我的 gradle 中,但编译器显示此错误:

然后我添加了这个

并且编译器没有错误,但在运行时仍然显示相同的错误。 这是我的毕业典礼

这就是我使用 lambda 表达式和流的方法。

所以我的问题是如何解决这个错误。

0 投票
2 回答
3865 浏览

android - 错误:任务执行失败:app:transformJackWithJackForDebug - Android?

gradle的如下:

和这里 :

但是当我运行我的项目时说我BUILD FAILED并向我显示以下消息:

在此处输入图像描述 在此处输入图像描述

0 投票
0 回答
122 浏览

java - 方法引用调用错误的方法

我正在编写一个 Android 应用程序并使用net.sourceforge.streamsupport:streamsupport:1.5.5 我正在使用带有嵌入式 JDK 的 Android Studio 2.3.3,源和目标兼容性设置为 1.8。

现在我有一个方法引用Light::getColor,当被调用时,它调用了错误的方法 ( Light::getMaxColorTemperature)。

如调试时所见: 调试器显示错误的方法调用

如果我使用 lambda 表达式代替 ( light -> light.getColor()),则调用正确的方法:

如调试时所见: 调试器显示正确的方法调用

重新编译整个项目并没有改变任何东西。有没有人见过这个?我不确定这是流支持问题还是 Android 编译器问题,以及如何弄清楚。

0 投票
0 回答
373 浏览

android-studio - 使用 Jack 编译器 + 数据绑定构建失败

我在我的应用程序中使用 Databinding 和 Rxjava,然后决定使用 lambda 从 RxJava 迁移到 RxJava2。所以我启用了 jackOption 和源兼容性。现在它无法编译并出现以下错误:

这是我的顶级毕业生:

&我的模块的gradle:

我尝试找到解决方案并在 SO 中找到了一些关于“无法生成视图活页夹”的帖子,但它们与我所面临的不同。

如果我从搜索中理解正确,则数据绑定仍处于 Jack 的实验模式,所以我不确定这是否是实际问题,或者我在这里遗漏了一些可以修复此错误的内容。我想知道的另一件事是,我在另一个项目中做了类似的事情,在该项目中我使用 rxJava 和数据绑定 & 我像在这个项目中一样迁移了它。它没有任何问题。

如果有人可以帮助我,将不胜感激。暂时,我正在使用retrolambda,但我仍然希望以“原生”方式使用它。