是否可以为equals()和hashCode()更改IntelliJ的代码生成模板
是否可以更改equals()
和hashCode()
的代码生成模板?
我希望生成的代码将Java 7 Objects
类用于这些方法。
从Ultimate Edition的第14.1版开始,可以在不使用任何第三方插件的情况下自定义equals()/ hashCode()的代码生成模板。
按“Alt + Insert”(生成…),选择“equals()和hashCode()”,您就可以选择其中一个预定义模板或自己的自定义模板。
更新:看看@datentyp的答案。 离开那些坚持旧版本的人
有插件允许这样做。 请看看这些:
它们是开源的,因此如果需要,您可以修改它们。
更新:从版本14.1开始,这是受支持的。
显然这个function不存在。
但有一个请求,请参阅:http: //youtrack.jetbrains.com/issue/IDEA-56007
是的, 这是可能的,但有一些小的黑客。 在app文件夹中找到idea.jar文件。 查看内部并找到如下文件:
- apacheEqualsBuilder3.vm
- apacheHashCodeBuilder3.vm
和其他.vm文件..
这些模板文件重用了equalsHelper.vm中的一些宏。
在重新启动应用程序时仔细更改JAR中的这些文件,并在下面的Idea中查看结果
generate-> equals()和hashCode() – > Template(…右边三个点) – >右侧只读预览。
我认为安装Idea的更新可能会使用您的自定义模板更改覆盖此JAR。
有用! 入住Idea 15.享受。 🙂