I have a little trick for Guava’s com.google.common.base.MoreObjects.toStringHelper(). I configured IntelliJ IDEA to use it when auto-generating toString() methods. I assume you can do the same in Eclipse. Here’s how to do it in Intellij:
- go inside a class
- hit Alt + Insert to popup the “Generate” menu
- choose
toString() - click the “Settings” button
- go to the “Templates” tab
- create a new template named “Guava’s MoreObjects.toStringHelper()” (I did it by copying the “ToStringBuilder” template)
-
change the template to:
public String toString() { #set ($autoImportPackages = "com.google.common.base.MoreObjects") return MoreObjects.toStringHelper(this) #foreach ($member in $members) .add("$member.name", $member.accessor) #end .toString(); } -
save the template, close the “Settings” and “Generate toString()” windows
- you can now choose the
Guava's MoreObjects.toStringHelper()template when generatingtoString()methods
When you add a new field to the class, simply re-generate the toString() method (IDEA will ask you to confirm that you want to replace the existing toString() method).