问题标签 [retrolambda]

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 回答
96 浏览

android - Android HashMap + Retrolambda

问题是,使用带有 Retrolambda 的 HashMap 会产生类似 Java8 的桶结构 - 平衡树吗?
我知道 aapt 插件将 Java8 转换为 Java7 字节码,但他们说:

RetroLambda 不支持除 lambda 表达式之外的 Java 8 功能

那么它在翻译过程中是否只是使用Java7 HashMap而不是Java8 HashMap?

0 投票
0 回答
500 浏览

java - 很长时间通过 gradle 构建 apk。

我正在开发一个 Android 项目,使用 gradle 进行构建。我们还有不同的库,如 RxJava、Retrolambda、HttpOk 等等。

我的问题是构建 apk 的构建时间大约是 3.x 分钟,这对于开发来说是相当痛苦的,就像你必须等待 3 分钟什么都不做一样。

有什么解决办法吗???

PS- 使用: gradle --offline --daemon <--command--> 来构建 Apk。

(我觉得 retolambda 转换 java8->java7 的时间太长了)

0 投票
1 回答
570 浏览

android - Android Studio 2.0 Beta 6 上的 Retro lambda 配置问题

我刚刚开始使用 Rx-Android 和 Retro Lambda。我正在创建一个 hello world 项目。我按照说明进行操作,但项目无法编译。

我有一个错误

错误:任务“:mobile:compileDebugJavaWithJavac”执行失败。

启动进程 'command 'C:\Program Files\Javajdk1.8.0_65/bin/javac'' 出现问题

我正在运行具有以下配置

Android Studio 的 windows 10 机器:2.0 Beta 6
Gradle 版本:2.10
Android 插件版本:2.0.0-beta6

Gradle 脚本

-----------------顶级Build.gradle--------------


------------------------- 模块 Build.Gradle --------- -


调试时的堆栈跟踪

我不知道出了什么问题?请帮我?

0 投票
1 回答
3959 浏览

android - android retrolambda, statement lambda can be replaced with expression lambda

I use retrolambda in my project, it works great. but today when i used it, Android Studio give me a tip:

enter image description here

I haven't seen this before, how I need to modify the code in order to meet this tip.

0 投票
1 回答
3523 浏览

retrofit - 在 gradle 文件中有 retrolambda 时改造 2.0 xml simplexml 转换器问题

这是我的gradle文件

如果我取消注释行compile 'com.squareup.retrofit2:converter-simplexml:2.0.0-beta4'android studio 在编译时抛出令人讨厌的错误

我不明白错误的实际含义。另外,有没有办法解决这个问题。

0 投票
2 回答
1965 浏览

android - java.lang.IllegalStateException:来自错误线程的领域访问。领域对象只能在创建它们的线程上访问

我正在尝试将改造 2 与 RxJava 和 Realm 结合起来,方法是将改造 observable 返回的服务调用的响应保存到使用 realm 的本地数据库中。所以我得到一个异常,说从不正确的线程访问领域。这是我的代码:

路径 1:

路线2:

日志猫:

0 投票
1 回答
573 浏览

java - 带有 TextChangedListener 的 RetroLambda

嗨,我是 RetroLambda 的新手。现在我将它与 Runnable、OnClickListener 等一起使用。问题是:是否可以将 RetroLambda 与 onTextChangeListener 等类一起使用?例如如何 lambda this

谢谢你。

0 投票
1 回答
1901 浏览

android - Android Studio 中的警告:可以替换为对方付费电话

我最近开始使用 retrolambda 库来支持 android 开发中的 lambda,我收到了来自 Android Studio 的以下警告:

可以用对方付费电话代替。

此检查报告可以用流 api 调用替换的 foreach 循环。

我的代码如下:

问题:如何将其替换为对方付费电话?

更新:当我按下 alt+enter 时,它会将代码转换为以下内容:

现在它说它无法解析方法流(),收集器。它可以修复吗?我可以添加一些导入语句吗?还是目前retrolambda不支持?

更新:已解决,请参阅下面的答案。

0 投票
0 回答
590 浏览

java - java.lang.NoClassDefFoundError: java.util.Objects - Android 4.1 和 Retrolambda

我遇到了一次崩溃,我不能 100% 确定发生了什么。我的怀疑是它与 retrolambda 在幕后所做的事情有关,以实现在 Java 8 之前使用 lambda。我收到以下崩溃:

没有直接使用java.util.Objects(实际上,在我的代码中搜索它并没有显示任何结果)。以下是我的代码的摘录:

关于应用程序设置的一些背景:

  • 我们使用 retrolambda 来支持在以前的 Java 版本上使用 lambda。
  • 我们的 minSdkVersion 是 16。
  • 我们正在使用的几个 gradle 插件(如果这些插件中的任何一个会提供一些关于正在发生的事情的信息):

就像我上面说的,我认为这可能与幕后发生的事情有关。很可能有些东西正在添加java.util.Objects(在 API 16 上不可用)。有人有可能对我有用的信息吗?在不提高 minSdkVersion 的情况下,我将如何规避这个问题?

0 投票
1 回答
2204 浏览

java - Android:接口中带有静态方法的 NoSuchMethodError(使用 Retrolambda)

在我的项目中,我尝试使用Retrolambda插件和Lightweight-Stream-API在 Android 应用程序中使用 Java 8 编写的代码来绕过代码兼容性。源项目在 Java 平台上运行良好(已澄清)。

将代码移植到Android后,我只需要对代码稍作修改(主要是获取com.annimon.stream.Stream类的实例,因为Android中的数组和集合缺少方法.stream(),所以我需要使用Stream类的静态方法,以数组/集合为参数),但这甚至不应该是我关心的问题。目前没有编译错误,应用程序启动,工作,但在调用时崩溃:

出现错误:

并且该类通过其祖先实现(Room扩展实现的扩展)。INamedRoomAItemContainerANamedINamed

所以我真的不明白,这会是什么问题。我怀疑Retrolambda插件与 Java 8 的工作方式不完全相同,但无法说出要更改的内容以及如何更改...而且问题可能完全出在其他地方,我只是从 Android 开始...

如果需要,我可以提供更多代码,但我认为所有重要的事情都已被告知。提前感谢您的帮助。