Browse Source

Update Gradle plugin to only repackage main jar

Previously, Repackage would attempt to repackage every jar in the
project. This would cause it to incorrectly attempt to repackage source
and javadoc jars.

This commit updates Repackage so that it ignores any jar with a
classifier. Hopefully this is a reasonable approximation for ignoring
'special' jars that should not be repackaged such as sources and
javadoc.
pull/97/merge
Andy Wilkinson 12 years ago
parent
commit
bde98defa5
  1. 26
      spring-boot-tools/spring-boot-gradle-plugin/src/main/groovy/org/springframework/boot/gradle/task/Repackage.java

26
spring-boot-tools/spring-boot-gradle-plugin/src/main/groovy/org/springframework/boot/gradle/task/Repackage.java

@ -46,18 +46,20 @@ public class Repackage extends DefaultTask {
project.getTasks().withType(Jar.class, new Action<Jar>() { project.getTasks().withType(Jar.class, new Action<Jar>() {
@Override @Override
public void execute(Jar archive) { public void execute(Jar archive) {
File file = archive.getArchivePath(); if ("".equals(archive.getClassifier())) {
if (file.exists()) { File file = archive.getArchivePath();
Repackager repackager = new Repackager(file); if (file.exists()) {
repackager.setMainClass(extension.getMainClass()); Repackager repackager = new Repackager(file);
if (extension.convertLayout() != null) { repackager.setMainClass(extension.getMainClass());
repackager.setLayout(extension.convertLayout()); if (extension.convertLayout() != null) {
} repackager.setLayout(extension.convertLayout());
repackager.setBackupSource(extension.isBackupSource()); }
try { repackager.setBackupSource(extension.isBackupSource());
repackager.repackage(libraries); try {
} catch (IOException ex) { repackager.repackage(libraries);
throw new IllegalStateException(ex.getMessage(), ex); } catch (IOException ex) {
throw new IllegalStateException(ex.getMessage(), ex);
}
} }
} }
} }

Loading…
Cancel
Save