Collections 缺少Kotlins扩展方法Stream.toList()

Collections 缺少Kotlins扩展方法Stream.toList(),collections,kotlin,kotlin-extension,Collections,Kotlin,Kotlin Extension,我正在尝试将一个流转换为kotlin中正确键入的列表。对于这种情况,kotlin提供了扩展方法。此方法位于kotlin.streams中。IDE(IntelliJ)不允许在流上调用此方法。我是否必须添加一个特殊的依赖项,还是应该将其作为标准库的一部分?我使用的是maven,它依赖于kotlin-stdlib-jdk8 1.2.10 注意:流是从库函数返回的,因此我必须使用它。请不要回答“在kotlin中您不使用流…”。如果我使用的是kotlin-stdlib-jdk8依赖项,而不是kotlin-

我正在尝试将一个流转换为kotlin中正确键入的列表。对于这种情况,kotlin提供了扩展方法。此方法位于kotlin.streams中。IDE(IntelliJ)不允许在流上调用此方法。我是否必须添加一个特殊的依赖项,还是应该将其作为标准库的一部分?我使用的是maven,它依赖于kotlin-stdlib-jdk8 1.2.10


注意:流是从库函数返回的,因此我必须使用它。请不要回答“在kotlin中您不使用流…”。

如果我使用的是
kotlin-stdlib-jdk8
依赖项,而不是
kotlin-stdlib-jre8
(我们从1.2版开始)

但是,如果我手动添加导入,则会起作用:

import kotlin.streams.toList

另外,请确保您已将Kotlin插件更新为最新版本,这可能也会有所帮助。但是,导入没有自动找到肯定有问题。

如果我使用
kotlin-stdlib-jdk8
依赖项而不是
kotlin-stdlib-jre8
(我们从1.2及更高版本开始),我可以重现您的问题

但是,如果我手动添加导入,则会起作用:

import kotlin.streams.toList

另外,请确保您已将Kotlin插件更新为最新版本,这可能也会有所帮助。但是,导入没有自动找到肯定有问题。

您需要在build.gradleIt中添加
kotlin-stdlib-jdk8
&set
jvmTarget=1.8
kotlin.compiler.jvmTarget
属性设置为“1.8”。你觉得这样就足够了吗?你刷新了maven项目了吗?如果您不知道如何操作,只需手动编写代码并在错误代码处移动光标,然后按
ALT+ENTER
尝试修复它。您还需要将
maven编译器插件
更新为
1.8
。使用Idea 2018.1,Kotlin插件1.2.30或31,此错误似乎已得到修复。我不能再重现这个问题了…您需要在build.gradleIt中添加
kotlin-stdlib-jdk8
&设置
jvmTarget=1.8
kotlin.compiler.jvmTarget
属性设置为“1.8”。你觉得这样就足够了吗?你刷新了maven项目了吗?如果您不知道如何操作,只需手动编写代码并在错误代码处移动光标,然后按
ALT+ENTER
尝试修复它。您还需要将
maven编译器插件
更新为
1.8
。使用Idea 2018.1,Kotlin插件1.2.30或31,此错误似乎已得到修复。我再也不能重现这个问题了……你明白了!非常感谢。它与导入一起工作。插件版本和idea是最新的(1.2.20和2017.3.2)。我应该打开一个bug报告吗?你明白了!非常感谢。它与导入一起工作。插件版本和idea是最新的(1.2.20和2017.3.2)。我是否应该打开一个bug报告以获取想法?