diff options
Diffstat (limited to 'org.eclipse.m2e.core')
-rw-r--r-- | org.eclipse.m2e.core/src/org/eclipse/m2e/core/internal/lifecyclemapping/ProjectConfigurationElementSorter.java | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/org.eclipse.m2e.core/src/org/eclipse/m2e/core/internal/lifecyclemapping/ProjectConfigurationElementSorter.java b/org.eclipse.m2e.core/src/org/eclipse/m2e/core/internal/lifecyclemapping/ProjectConfigurationElementSorter.java index 2df199ab..33a6b1b7 100644 --- a/org.eclipse.m2e.core/src/org/eclipse/m2e/core/internal/lifecyclemapping/ProjectConfigurationElementSorter.java +++ b/org.eclipse.m2e.core/src/org/eclipse/m2e/core/internal/lifecyclemapping/ProjectConfigurationElementSorter.java @@ -169,10 +169,18 @@ public class ProjectConfigurationElementSorter { continue; } - List<String> children = fullDag.getChildLabels(id); - if(children == null || children.isEmpty()) { - //found primary configurator - //get secondaries now + List<String> predecessors = fullDag.getChildLabels(id); + + boolean addAsPrimary = true; + if(predecessors != null && !predecessors.isEmpty()) { + for(String p : predecessors) { + if(configuratorIds.contains(p)) { + addAsPrimary = false; + break; + } + } + } + if(addAsPrimary) { Set<String> secondaries = new LinkedHashSet<>(); getDependents(id, fullDag, secondaries); primaryConfigurators.put(id, new ArrayList<>(secondaries)); |