diff --git a/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/bnd/BndBuilder.java b/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/bnd/BndBuilder.java index 9d5ae34b1b..6f531ff035 100644 --- a/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/bnd/BndBuilder.java +++ b/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/bnd/BndBuilder.java @@ -164,22 +164,23 @@ public void addClasspath(aQute.bnd.osgi.Jar jar) { .validateContent(monitor); // now build sub jars List subBuilders = builder.getSubBuilders(); - if (subBuilders.size() > 0) { - for (Builder subBuilder : subBuilders) { - File outputFile = subBuilder.getOutputFile(null); - if (outputFile != null) { - Jar subJar = subBuilder.build(); - subJar.write(outputFile); + for (Builder subBuilder : subBuilders) { + if (subBuilder == builder) { + continue; + } + File outputFile = subBuilder.getOutputFile(null); + if (outputFile != null) { + Jar subJar = subBuilder.build(); + subJar.write(outputFile); + for (IFile file : project.getWorkspace().getRoot() + .findFilesForLocationURI(outputFile.toURI())) { + file.refreshLocal(IResource.DEPTH_ZERO, monitor); + } + File propertiesFile = subBuilder.getPropertiesFile(); + if (propertiesFile != null) { for (IFile file : project.getWorkspace().getRoot() - .findFilesForLocationURI(outputFile.toURI())) { - file.refreshLocal(IResource.DEPTH_ZERO, monitor); - } - File propertiesFile = subBuilder.getPropertiesFile(); - if (propertiesFile != null) { - for (IFile file : project.getWorkspace().getRoot() - .findFilesForLocationURI(propertiesFile.toURI())) { - new BndErrorReporter(project, subBuilder, file).validateContent(monitor); - } + .findFilesForLocationURI(propertiesFile.toURI())) { + new BndErrorReporter(project, subBuilder, file).validateContent(monitor); } } }