问题标签 [kotlin]

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 投票
1 回答
1300 浏览

intellij-idea - 在 Kotlin 中为 JavaFX 项目生成 jar

当我在玩 Kotlin 时,我想知道是否可以为用 Kotlin 编写的 JavaFX 应用程序生成一个 jar。所以我写了一个简单的应用程序,它可以在 IntelliJ IDEA 上运行,但是当我决定生成 jar 时它从来没有用过!它说它无法找到或加载主类。

我想问题是当它在项目设置中询问主类时,我输入了应用程序类名(它不包含主方法,因为它必须在包级别),而在纯 Java 中我可以将 main 方法放在应用程序类中,它将完美地工作。那么我应该如何解决这个问题?

编辑:刚刚尝试将目标从 JavaFX Application 更改为普通 Jar 并且它有效。不知道为什么它不适用于 JavaFX 应用程序目标。

0 投票
1 回答
1288 浏览

android - kotlin android proguard错误

我正在尝试构建一个 apk 并对其进行保护,但它失败并显示如下消息:

我在我的 proguard.cfg 中添加了 -dontwarn on kotlin.dom。** 但它没有帮助。

0 投票
2 回答
83 浏览

generics - 如何将一个集合的内容添加到新集合

我正在尝试重写一个调用超类并将返回值添加到新集合的方法(这是必需的,因为超类的返回值是不可变的)。

惯用的 Java 如下:

我试图在 Kotlin 中实现一个等价物但没有成功:

这似乎是 addAll 函数的类型推断问题,但我不知道如何解决它。帮助表示赞赏:-)


对于未来的读者,我在这里感到困惑的原因是错误弹出窗口中的类型不匹配:

错误弹出

MutableSet工具Iterable,这里的关键是最后的'?' 'Found' 行上的字符表示返回的值可以为空。

0 投票
3 回答
2543 浏览

spring - kotlin 中的数字不可序列化

我发现 kotlin 中的数字不可序列化。

  1. 第一个问题

设备.kt:

DeviceRestRepository.kt:

尝试编译此代码时出现错误,因为kotlin.Long不是Serializable

错误:(14, 72) Kotlin:类型参数不在其范围内:应该是“java.io.Serializable”的子类型?

  1. 第二个问题

当我尝试使用java.lang.Long时,我得到了同样的错误:

DeviceRestRepository.kt:

警告:(14, 72) Kotlin:不应在 Kotlin 中使用此类。改用 kotlin.Long 。

错误:(14, 72) Kotlin:类型参数不在其范围内:应该是“java.io.Serializable”的子类型?

0 投票
2 回答
2240 浏览

android - 在 Kotlin 中用复杂类型覆盖 Java 方法

我正在尝试实现JsonHttpResponseHandler#onSuccess。当我使用:

我得到一个意外的覆盖错误,但是当我添加override修饰符时,我得到一个onSuccess overrides nothing错误。我做错了什么,还是我在 Kotlin 编译器中发现了一个错误?

0 投票
3 回答
3156 浏览

java - kotlin:注释中数组的一些问题

我在注释中有一些问题:

在这种情况下,我收到以下错误:

类型推断失败。预期类型不匹配:找到:kotlin.Array 需要:kotlin.String

uniqueConstraints = array(...)没有问题,但是 Idea 在columnNames = array(...)中显示错误

我使用hibernate-jpa-2.1-api-1.0.0.Final.jar


解决方法:我使用复合键 (@javax.persistence.IdClass) 而不是 uniqueConstraints

0 投票
2 回答
3196 浏览

android - Kotlin 类的 Android 单元测试因“找不到符号类...”而失败

我最近将 Kotlin 插件添加到我的 Android 应用程序的构建中,现在我想在 InstrumentationTestCase 中测试 Kotlin 类。

IntelliJ/Android Studio 在编辑器中看到该类,并且似乎在启动应用程序时已编译该类,但是当我启动gradlew assembleTest它时失败并显示“找不到符号 [类名称]”。

在我的 build.gradle 中,我将 kotlin 文件夹添加为 srcDir

有什么建议吗?

编辑:这个问题是 Kotlin 和 Retrolambda 插件之间的冲突,现在已经解决。

0 投票
9 回答
46100 浏览

kotlin - 在 Kotlin 中处理可为空或空列表的惯用方式

假设我有一个activitiestype变量List<Any>?。如果列表不为空且不为空,我想做点什么,否则我想做点别的。我想出了以下解决方案:

在 Kotlin 中是否有更惯用的方法来做到这一点?

0 投票
4 回答
7461 浏览

dependency-injection - 将 Kotlin 与 Dagger 一起使用

使用 Dagger 将依赖项注入类的最佳方法是什么,尤其是像活动这样的零参数构造函数类,使用 Dagger?Dagger 2 可能会改善这种情况吗?

提前致谢。

0 投票
11 回答
148718 浏览

inheritance - 在 Kotlin 中扩展数据类

数据类似乎是 Java 中老式 POJO 的替代品。这些类允许继承是可以预料的,但我看不出扩展数据类的方便方法。我需要的是这样的:

上面的代码由于component1()方法冲突而失败。只在其中一个类中留下data注释也不起作用。

也许还有另一种方式来扩展数据类?

UPD:我可能只注释子子类,但data注释只处理构造函数中声明的属性。也就是说,我必须声明所有父级的属性open并覆盖它们,这很难看: