I\'m looking for a solution to generate a checksum for any type of Java object, which remains the same for every execution of an application that produces the same object.>
Do you want to be able to do this for all Java objects?
In that case hashCode() doesn't work.
For some classes hashCode() has a stricter definition which guarantees equality across executions. For example String has a well-defined hashCode implementation. Similarly List and Set have well-defined values, provided all objects that they contain also have well-defined values (note that the general Collection.hashCode() does not require the value to be well-defined).
For other classes you will have to use reflection recursively with some well-defined formula to build a checksum.