可见性修饰符(全局)
适用于 ✅ 开源版 ✅ 专业版 ✅ 企业版
默认情况下,大多数供用户使用的生成的代码都使用显式 (Java) 或隐式 (Kotlin, Scala) public 修饰符。
在 Kotlin 中,有充分的理由偏离此默认设置,包括
-
启用了
-Xexplicit-api=strict,并且省略原本可选的可见性修饰符是一个编译错误 - 生成的代码应该生成为
internal,而不是public
在上述情况下,配置标志可以提供帮助
XML(独立和 Maven)
编程方式
Gradle (Kotlin)
Gradle (Groovy)
Gradle(第三方)
<configuration>
<generator>
<generate>
<!-- Possible values for visibilityModifier
- DEFAULT : The default per language (Java: public, Kotlin, Scala: implicit public)
- NONE : Do not generate visibility modifiers
- PUBLIC : Generate explicit public modifiers (Java, Kotlin)
- INTERNAL : Generate explicit internal modifiers (Kotlin) -->
<visibilityModifier>INTERNAL</visibilityModifier>
</generate>
</generator>
</configuration>
有关更多详细信息,请参见配置 XSD、独立代码生成和maven 代码生成。
new org.jooq.meta.jaxb.Configuration()
.withGenerator(
new Generate()
// Possible values for visibilityModifier
// - DEFAULT : The default per language (Java: public, Kotlin, Scala: implicit public)
// - NONE : Do not generate visibility modifiers
// - PUBLIC : Generate explicit public modifiers (Java, Kotlin)
// - INTERNAL : Generate explicit internal modifiers (Kotlin)
.withVisibilityModifier(VisibilityModifier.INTERNAL)
)
import org.jooq.meta.jaxb.*
configuration {
generator {
generate {
// Possible values for visibilityModifier
// - DEFAULT : The default per language (Java: public, Kotlin, Scala: implicit public)
// - NONE : Do not generate visibility modifiers
// - PUBLIC : Generate explicit public modifiers (Java, Kotlin)
// - INTERNAL : Generate explicit internal modifiers (Kotlin)
visibilityModifier = VisibilityModifier.INTERNAL
}
}
}
有关更多详细信息,请参见配置 XSD和gradle 代码生成。
configuration {
generator {
generate {
// Possible values for visibilityModifier
// - DEFAULT : The default per language (Java: public, Kotlin, Scala: implicit public)
// - NONE : Do not generate visibility modifiers
// - PUBLIC : Generate explicit public modifiers (Java, Kotlin)
// - INTERNAL : Generate explicit internal modifiers (Kotlin)
visibilityModifier = "INTERNAL"
}
}
}
有关更多详细信息,请参见配置 XSD和gradle 代码生成。
// The jOOQ-codegen-gradle plugin has been introduced in version 3.19. // Please use the official plugin instead of the third party plugin that was recommended before.
并非所有值都适用于所有语言。
另请参见每个强制类型的可见性修饰符以获取更多选项。
反馈
您对此页面有任何反馈吗? 我们很乐意听取您的意见!