为了账号安全,请及时绑定邮箱和手机立即绑定

Java编写仅在编译时运行的代码?

Java编写仅在编译时运行的代码?

森栏 2021-10-20 16:03:55
是否可以编写“maven 插件”或类似在编译时更改 .java 的内容?例如:@Entity... class ... {  @Id  long id}我想注释掉所有的注释并根据实体创建一个 ORM-Mapping.xml / Persistence
查看完整描述

3 回答

?
狐的传说

TA贡献1804条经验 获得超3个赞

这是可能的。龙目岛项目会修改编译后的代码,但是没有公开的 API 来做到这一点。(请参阅lombok是如何工作的?)如果您必须删除注释,这就是您想要的。在运行时禁用所有注释可能是不合理的。如果您只想从已编译类中的注释中生成一些更简单的东西


查看完整回答
反对 回复 2021-10-20
?
holdtom

TA贡献1805条经验 获得超10个赞

注释主要基于启用/禁用其识别的配置文件。


使用Spring 配置文件来区分配置类。如果出现特殊配置文件,则不会识别任何配置类。该解决方案需要根据 Spring 配置文件来配置所有配置。


@Configuration

@Profile("noAnnotations")

public class SomeConfigurationClass


查看完整回答
反对 回复 2021-10-20
  • 3 回答
  • 0 关注
  • 145 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信