Tag: IntelliJ

如何恢复Intellij中的模块依赖项排除(代码检查后误报)

我运行了智能代码检查,它给了我一个“不必要的模块依赖”。 我“固定”,但确实是一个误报。 所以我点击“修复它”,它从源文件夹中删除了我的测试文件夹的依赖关系,但是现在我所有的测试类都给了我“未解决的参考”错误。 我如何恢复它? 或者,也许,我如何再次添加依赖项? 这是一个更好地理解这个问题的形象

在IntelliJ的Kotlin> Java转换之后,将源代码恢复为Java

所以我想尝试转换我们用Java编写的后端API源代码,并看看它是如何看起来(IIRC转换之前有一个预览),但一旦我做到了,它会自动开始转换所选文件夹中的所有文件,最后它要求代码更正,我回答了没有,因为我想取消它,现在我坚持一个破碎的代码基地没有其他选项比: 恢复到最后的git提交并重新实现从我身边完成的所有更改(我可以阻止它,但在转换之前提交,但是哦) 继续使用Kotlin编码,但我有代码错误,我不知道如何解决 我所要问的是,如果无论如何要将Kotlin转换回IntelliJ IDEA中的Java? 先谢谢你

如何用IntelliJ模仿C ++风格的“自动”式演绎?

在Java的一些应用程序中,我错过了C ++中的“auto”关键字。 不要误解我的意思,这绝对不是关于语言哲学或编程实践的讨论。 例如,如果我有一个Map of Map,并且想要关联的入口集,那么代码如下所示: Map<String, Map<String, VeryLongClassNameGetsEvenLongerAndLonger>> map = new HashMap<>(); Set<Map.Entry<String, Map<String, VeryLongClassNameGetsEvenLongerAndLonger>>> entryset = map.entrySet(); 现在输入变量“entryset”是非常尴尬的输出和得到正确的。 在C ++中,我会在这里使用auto。 这在Java中不存在,所以我使用IntelliJ IDE提供的下一个最好的东西。 我输入 Integer entryset = map.entrySet(); 这显然是不正确的,但是这提示IntelliJ向我建议: Change variable 'entryset' type to 'Set<Map.Entry<String, Map<String, VeryLongClassNameGetsEvenLongerAndLonger>>> 所以我只是按Alt-Enter,它是自动更正。 但是,我想知道:我可以这样做,而不通过纠正功能? 像“自动完成类型”-Hotkey,或者是/ auto / pragma或者什么东西?

将任何数据转换为Kotlin中的数组

我正在通过从Kotlin的Map<String, Any>加载数据来初始化一个类。 由于这张地图是直接从JSON收集的,我不确定是否存在任何给定的关键字,或者它的价值是我期望的类型。 为了安全地解开这个Map,我正在做以下工作,这看起来很完美: a = rawData["A"] as? String ?: "" 这些数据中的一部分是进一步嵌套的JSON,我将其解包到数组中; 我试图以同样的方式做到这一点: b = rawData["B"] as? Array<String> ?: arrayOf<String>() 但是,当我尝试使用数组(如上所述),IntelliJ踢了一个小题大做,说 警告:(111,30)Kotlin:不加限制的演员:任何? 到数组<String> 这只是IDE自身扭曲,还是这种方法真的不安全的阵列,尽管看起来是完全安全的其他类型?

高效的地图和过滤器组合与stdlibs

我试图写一个有效的解决方案,以通用的地图/过滤器范例。 在Kotlin中,你可以编写如下的代码: schedule.daysOfWeek.map { it.adjustInto(today) as LocalDate } .filterTo(datesOnSchedule) { it.isBefore(endDate) } 一般来说,我正在应用一个地图,然后根据一个条件过滤映射的值。 但是,为此创建了一个中间集合。 这似乎没有必要。 我写了一个小功能,应该做同样的事情,但没有中间收集。 inline fun <T, R> Iterable<T>.mapThenFilter(predicate: (R) -> Boolean, transform: (T) -> R) { mapThenFilter(ArrayList<R>(), predicate, transform) } inline fun <T, R, C : MutableCollection<in R>> Iterable<T>.mapThenFilter(collection: C, predicate: (R) -> Boolean, transform: (T) -> R): C { for (element […]

如何调试Kotlin序列/集合

采取以下一行,可以表示为一个集合或序列上的一系列操作: val nums = (10 downTo 1) // .asSequence() if we want this to be a sequence .filter { it % 2 == 0 } .map { it * it } .sorted() // .asList() if declaring it a sequence println(nums) // [4, 16, 36, 64, 100] 比方说,我想看看每一步的元素,他们会(从扣除): [10, 9, 8, 7, 6, 5, 4, 3, […]

有没有办法自动填充参数名称?

当我实例化具有大量参数的类(或调用方法)时,我总是使用命名参数。 但是每次输入每个参数名称都很累人。 data class User(val id: String, val name: String, val age: Int) val user = User(id = "1", name = "John", age = 99) IDEA可以预先填充这样的参数吗? val user = User( id = , name = , age = )

我怎么能告诉IntelliJ的“在文件中查找”忽略生成的文件?

我需要在文件中查找。 我想忽略或排除生成的文件,如目标文件夹中的JAX-WS构件或类。 我如何告诉IDEA从查找中排除这些文件?

无法在IntelliJ中编译

你好,我得到这个错误,我似乎无法离开。 我正在使用IntelliJ CE当前版本,我已经做了一些全新的IDE安装。 尽管如此,我总是得到这个错误。 这是我正在研究的项目: 我的理智检查不起作用。 也更有趣…只有在第一次运行时,当我打开任何Java项目,我得到这个错误: Error:Internal error: (java.lang.VerifyError) Uninitialized object exists on backward branch 90 Exception Details: Location: org/jetbrains/kotlin/jps/build/KotlinBuilder.createCompileEnvironment(Ljava/util/Map;Lorg/jetbrains/kotlin/incremental/components/LookupTracker;Lorg/jetbrains/jps/incremental/CompileContext;Lorg/jetbrains/kotlin/jps/build/KotlinBuilder$MessageCollectorAdapter;)Lorg/jetbrains/kotlin/compilerRunner/JpsCompilerEnvironment; @171: goto Reason: Error exists in the bytecode Bytecode: 0x0000000: bb03 fe59 b703 ff3a 0619 063a 0719 0713 0x0000010: 02d7 2cb6 0403 5719 0713 0405 bb04 0759 0x0000020: 2b3a 083a 093a 0a3a 0b3a 0c19 […]

IntelliJ IDEA:无法找到或加载主类C:\ Program

我在IntelliJ IDEA构建项目时遇到问题。 我是Java和这个IDE的新手,所以我可能会犯一些愚蠢的错误。 无论如何,我确定这个项目写得不错。 这是我点击“ Build Project ”按钮后得到的消息: Error:Abnormal build process termination: C:\Users\artartart\.IdeaIC2017.2\config\jdks\jbsdk8u112b287.2_windows_x64\jre\bin\java -Xmx4096m -Djava.awt.headless=true -Djava.endorsed.dirs=\"\" -Djdt.compiler.useSingleThread=true -Dcompile.parallel=false -Drebuild.on.dependency.change=true -Djava.net.preferIPv4Stack=true -Dio.netty.initialSeedUniquifier=3244537063909990413 C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2017.2.4\plugins\android\lib\lombok-ast-0.2.3.jar -Dfile.encoding=windows-1250 -Djps.file.types.component.name=CommunityFileTypes -Duser.language=pl -Duser.country=PL -Didea.paths.selector=IdeaIC2017.2 "-Didea.home.path=C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2017.2.4" -Didea.config.path=C:\Users\artartart\.IdeaIC2017.2\config -Didea.plugins.path=C:\Users\artartart\.IdeaIC2017.2\config\plugins -Djps.log.dir=C:/Users/artartart/.IdeaIC2017.2/system/log/build-log -Djps.fallback.jdk.home=C:/Users/artartart/.IdeaIC2017.2/config/jdks/jbsdk8u112b287.2_windows_x64 -Djps.fallback.jdk.version=1.8.0_112-release -Dio.netty.noUnsafe=true -Djava.io.tmpdir=C:/Users/artartart/.IdeaIC2017.2/system/compile-server/lux_f88e3d21/_temp_ -Djps.backward.ref.index.builder=true -Dkotlin.incremental.compilation.experimental=true -Dkotlin.daemon.enabled -Dkotlin.daemon.client.alive.path=\"C:\Users\ARTART~1\AppData\Local\Temp\kotlin-idea-2207181666383577824-is-running\" -classpath "C:/Program Files/JetBrains/IntelliJ IDEA Community Edition […]