微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何取消或强制删除 ProGuard 中 JPA 实体中的 @javax.persistence.Transient 注释方法?

如何解决如何取消或强制删除 ProGuard 中 JPA 实体中的 @javax.persistence.Transient 注释方法?

我正在将 JPA 实体提取一个单独的 Fat/Uber jar 中以供外部系统使用。 ProGuard 通过 com.github.wvengen:proguard-maven-plugin 使用来缩小所有其他未使用的代码。 我想将所有方法保留在 JPA 实体中,但由 @javax.persistence.Transient 注释注释的方法除外。我在 ProGuard 规则中发现了字段修饰符的“!transient”,但似乎方法的 !@javax.persistence.Transient 不起作用:( 我可以通过其他方式以某种方式达到相同的效果吗?

解决方法

不幸的是,我没有得到关于这个问题的答案,也无法直接通过 ProGuard+MavenPlugin 解决这个问题,但我在运行 ProGuard 之前通过一个额外的步骤解决了这个问题。在运行 ProGuard Maven 插件之前,我刚刚在 Maven 阶段使用了 ByteBuddy + Maven 插件,然后它会优化/删除其余未使用的东西,请在此处查看有关字节伙伴检测步骤的详细信息:byte-buddy remove/strip methods

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。