有没有办法来注释kotlin对象的INSTANCE字段?

我有一个Kotlin对象,有几个字段暴露为静态@JvmFields 。 我使用的解析器(我无法编辑或更改)查找public static字段并基于这些创建配置文件。 由于INSTANCE字段也是公共的,因此解析器将生成一个名为instance的新类别。 有没有办法将实际的注释添加到INSTANCE字段? 我想将@Ingore注释添加到它,所以解析器不使用INSTANCE字段。

基本上,答案是否定的,Kotlin不允许以任何其他方式注释或改变INSTANCE字段。 如果您认为这可能是一个有用的function,请在kotl.in/issue上提交function请求。

这个问题的有效解决方案是:

  • 使字节码分析工具Kotlin意识到,即使它与Kotlin声明行为正确。 虽然这需要完成不重要的工作,但在您的情况下似乎不可能,这可能是宝贵的时间投资。

  • 创建另一个即席工具,后处理由Kotlin编译器生成的类,并添加所需的注释,然后将该工具包含到您的构建中。