Это зависит от ситуации. Если циклические ссылки вызваны ошибкой или встречаются только в узком диапазоне случаев, я бы попытался рассмотреть конкретный случай.
Если ситуация является общей в том, что графы объектов с циклами могут возникать в обычном режиме, и это вопрос их обнаружения, возможно, стоит попытаться реализовать собственное решение, основанное на отражении (чтобы получить все поля классов в графе объектов, а также их значение) и сохранение значений ссылочных типов в IdentityHashMap для обнаружения вновь посещенных объектов.
См. в этом посте для дополнительного обсуждения использования карт хеш-идентификации для обнаружения циклических ссылок.