User can easily setup cyclic project dependencies
and let Ant loop "inifinitelly".
For J2ME project (where some project queries are
forwarded) this can easily cause out of memory
errors or other strange exceptions.
It is not problem to detect the cycles in each
project type during each critical action but there
is missing at least some common UI to display warning.
Currently J2ME project detect cycle during project
dependencies resolution in customizer and during
each query for sources and javadoc. Singleton
dialog with warning and list of involved projects
is displayed in case of cycle detection.
If you decide to detect the cycles and show the
warning in project infrastructure trasparently to
project types, I'll remove our UI.
Otherwise the warning dialog needs to be common
and have some public API.
Will leave this method to represent need for e.g. a utility method in
ProjectUtils to ensure that a proposed addition to the set of
subprojects for a given project will not cause a cycle. Don't bother
trying to detect cycles in random queries etc.; better to prevent them
from occurring to begin with.
See also issue #43848 (java/j2seproject) and issue #43849 (web/project).
committed * Up-To-Date 1.3
committed * Up-To-Date 1.5
added * Up-To-Date 1.1