问题标签 [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 回答
42 浏览

android - 尝试在 API 16 中运行时编译失败

我正在使用 RxJava2、Retrofit2、Retrolambda 等开发应用程序。我已经在使用最新 SDK Nougat 的模拟器中很好地运行了该应用程序,但现在我需要在 API 16 上进行测试,但我遇到了下一个错误。我要疯了。

我不知道如何调试此错误。

build.gradle 项目

// 顶级构建文件,您可以在其中添加所有子项目/模块通用的配置选项。

0 投票
1 回答
1030 浏览

android - Multidex 抛出 java.lang.NoClassDefFoundError、RxJava、Retrolambda

我决定创建测试示例:

multidex true (1.0.1),rxjava 2.1.0,retrolambda 3.6.0

在此处输入图像描述

所以我在 Android 4-6 上看到了错误

安卓 4

安卓 5.1.1

简单的例子

0 投票
0 回答
33 浏览

android - Retrolambda 不适用于 Android 应用的测试版本

我发现如果我的 android 项目编译为单元测试目的,它不会被 Retrolambda 转换。

任何子模块都正确转换而不是根应用程序。

为了测试目的,我如何强制 RL 转换?

0 投票
1 回答
253 浏览

android - Lint 在读取 Kotlin 对象的 Java 类上崩溃

我有一个 Kotlin 数据类:

和一个像这样开头的 Mapper 类(在 Java 中):

运行 Lint 时,它在 Mapper 类中崩溃

然后它会生成一个包含大量误报的 lint 报告(我猜它只是在异常发生后无法正常工作)。

我尝试了几件事:

  • 使用类而不是数据类
  • 将所有内容升级到最新版本(工具、sdk 等)
  • 更改相关对象的名称
  • 用 Java 类替换 Kotlin 类(这种情况有效)
  • 使映射器成为另一个类的内部类(这种情况有效)
  • 将其移至另一个包
  • 注释所有方法并使其返回 null(这有效)。基本上,前三行是让它崩溃的
  • 用常量值替换所有 newInterview.get ,但它也会崩溃

显然,这些解决方案都不是理想的解决方案,但在这一点上,我非常绝望。我的两个主要选择是停止使用 Lint 或 Kotlin。

欢迎任何建议。

0 投票
1 回答
966 浏览

java - 如何在 lambda 表达式中使用 Android 的 DrawerLayout.DrawerListener?

我一直在探索 lambda 的概念以及它们如何在实现函数式接口时提供更简单的语法。

根据这篇文章,如果有一种方法,则很容易实现 lambda。所以,

可以像这样使用:

我已经看到这项工作适用于具有不同类型参数的方法的接口,例如:

可以用作

所以我能够以这种方式使用 onNext 后跟 onError 。

但是看看DrawerListener 接口

我无法使用 RetroLambda 来使用它。IDE 不建议我将代码更改为 lambda,我也不能这样使用它。我必须这样写...

...这不整洁。我希望有一个解决方案来写它:

0 投票
0 回答
55 浏览

android - Android Studio Retrolambda 调试

我说的是 Android Studio 中的调试。是否可以在 retrolambda 代码中访问外部类变量?

例如:

0 投票
2 回答
678 浏览

java - 项目未在 Project 中使用 Kotlin 编译

当我在 Kotlin 中添加一些类时,编译我的程序时遇到问题。当我清理项目并开始运行它时,会提示下一个错误:

进程'命令'/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java''以非零退出值1结束

问题是,如果我再次执行该项目,它会完美运行。所以基本上我必须两次构建项目才能执行项目。

我需要解决这个问题,因为我在 Jenkins 中构建了最终版本,这给我带来了问题。

关于如何修复它的任何线索?

编辑:

这是它给我的独特警告,但正如我所说,它们是警告,而不是错误,如果我再次运行该项目,它会完美运行:

0 投票
2 回答
156 浏览

android - RxJava1 到 Rxjava2 迁移错误

将 RxJava1 代码转换为 RXJava2 给出这个错误,不确定我做错了什么

不存在类型变量 R 的实例,因此 Single> 符合 ObserableSource

API 调用

RXJAva1:

RXJava2

0 投票
1 回答
221 浏览

android - How to configure retrolambda for android6(API23)

I want to add Java8 support to my project. The only suitable solution I found is retrolambda gradle plugin project. Here is my build.gradle files for a project and module relatively.

Note: Please don't suggest migrate to Android Studio 3, because I want to understand why it is not working.

project build.gradle

module build.gradle

The app itself is pretty simple. It has only one default activity, with Java8 code, like this:

When start the app I get following an error:

FATAL EXCEPTION: main Process: com.slesh.mtbbank, PID: 25338 java.lang.NoSuchMethodError: No interface method stream()Ljava/util/stream/Stream; in class Ljava/util/List; or its super classes (declaration of 'java.util.List' appears in /system/framework/core-libart.jar) at com.slesh.mtbbank.MainActivity.onCreate(MainActivity.java:19) at android.app.Activity.performCreate(Activity.java:6303) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1108) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2402) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2509) at android.app.ActivityThread.access$1000(ActivityThread.java:153) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1373) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:5529) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:739) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:629)

What is missed? Any ideas why it doesn't work?

Thanks in advance!

0 投票
0 回答
1161 浏览

android - 错误:任务“:app:compileRetrolambdaDebug”的执行失败 - Firebase 集成后

我正在创建一个支持 Retrolambda 和 RxJava2 的应用程序。一切正常,直到我需要实现推送通知功能。我已经在我的应用程序中配置了 firebase,此后执行失败并显示以下错误消息。

顶级构建.gradle

应用级 Build.gradle

如果我从我的应用程序中删除 firebase,一切都会再次正常运行。请帮我解决这个问题。