Is it possible to change IntelliJ's code generation template for equals() and hashCode()

Deadly 提交于 2019-11-29 05:30:33

As of release 14.1 of the Ultimate Edition it is possible to customize the Code generation template of equals()/hashCode() without the use of any third party plugin.

Press "Alt + Insert" (Generate...), choose "equals() and hashCode()" and you will be able to select one of the predefined templates or a customized template of your own.

UPDATE: have a look at the answer from @datentyp. Leaving mine for those stuck on the old versions

There are plugins to allow this. Please have a look at this ones:

http://plugins.jetbrains.com/plugin/6875?pr=idea

http://plugins.jetbrains.com/plugin/7244?pr=idea

They are opensource so you can amend them if you need to.

Update: As of version 14.1 this is supported.

Apparently this functionality does not exist.

There is a request for it though, see: http://youtrack.jetbrains.com/issue/IDEA-56007

Yes it is possible, but with some small hack. Locate your idea.jar file in app folder. Look inside and find files like:

  • apacheEqualsBuilder3.vm
  • apacheHashCodeBuilder3.vm

and other .vm files..

These template files reuse some macros from equalsHelper.vm.

Change these files inside JAR carefully as you like restart app and check result in Idea under

generate->equals() and hashCode()->Template (... three dots on the right)->read only preview on the right side.

I think installing update of Idea may overwrite this JAR with your custom template changes.

It works! Checked in Idea 15. Enjoy. :-)

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!