Intellij忽略.kt文件在没有'package ..'语句的包结构下? 为什么?
package com.yada.yada
当我在没有包语句的com.yada.yada
创建Java类“ss”时IntelliJ会发生什么? – 红色“缺少包装声明”。
当我在没有包声明的com.yada.yada
创建Kotlin文件时会发生什么? – “直到你的DI框架在运行期间将无法扫描你的代码”
为什么IJ软件包验证对Kotlin不是强制性的? 我只是浪费了一个小时,试图找出封装扫描有什么问题,才意识到这是显示屏。 Java 9的拼图将这种格式不正确的文件/类引发的Kotlin混淆了四倍而没有警告信息? 那么,你打赌会的!
请返回Kotlin的“警告”声明。 PS注册/登录方法是不足以让我自己访问Intellij错误追踪(我真的生气了一次访问密码重置,1000资源和980密码我不记得或关心),因此使这个公共在计算器上。
如果有人要捍卫这种行为,请解释为什么? 也许我错过了一些东西,否则请回复打开错误(最好是JetBrains的某个人),我会接受它。
对没有包声明的文件缺少检查警告是一个错误; 相应的YouTrack问题在这里 。
我不确定这个帖子在这里是否合适,但是为了回答真正的问题, 官方文件指出:
如果未指定包,则此文件的内容属于没有名称的“默认”包。
由于使用Kotlin,您的文件不必位于与包装相匹配的文件夹中,因此没有包装声明必须是一个选项,以便您可以将文件组织到文件夹中,但不希望将其放入包 – 这样,它们可以拥有相同的包,就好像它们没有嵌套在任何文件夹中一样,只是在项目的根目录中。
我承认这有点奇怪,你的包声明与你的文件所在的文件夹不匹配,但是如果你完全忽略了包声明,你就不会得到这个声明。 我猜想这是故意的。
这通常不会成为问题,因为默认情况下,IDE将为您创建文件的文件夹生成相应的包声明。 我不确定如果你使用的是IntelliJ,没有包声明,你是如何创建一个文件的,除非你在根src
文件夹中而不是在一个包文件夹中。
- 如何用IntelliJ模仿C ++风格的“自动”式演绎?
- 与Kotlin一起使用JavaCV
- 如何在Intellij Idea中运行Kotlin函数
- 是否有限制stdlib函数在Kotlin中的可见性?
- TransformException重复org / intellij / lang / annotations / Identifier.class的条目
- 在IntelliJ中如何改变Kotlin的'这个属性有一个后台'代码编辑器突出显示?
- Intellij IDEA中Kotlin项目的自动完成和代码分析非常慢
- arrayListOf和hashMapOf:未解析的引用
- 在使用maven时,Kotlin不是从src / main / kotlin编译的