|
1 | 1 | package org.shipkit.internal.gradle.java; |
2 | 2 |
|
3 | | -import org.gradle.api.Action; |
4 | 3 | import org.gradle.api.Plugin; |
5 | 4 | import org.gradle.api.Project; |
6 | 5 | import org.gradle.api.Task; |
7 | 6 | import org.gradle.api.logging.Logger; |
8 | 7 | import org.gradle.api.logging.Logging; |
9 | | -import org.gradle.api.publish.PublicationContainer; |
10 | 8 | import org.gradle.api.publish.maven.MavenPublication; |
11 | 9 | import org.gradle.api.tasks.bundling.Jar; |
12 | 10 | import org.shipkit.gradle.configuration.ShipkitConfiguration; |
| 11 | +import org.shipkit.internal.gradle.configuration.DeferredConfiguration; |
13 | 12 | import org.shipkit.internal.gradle.configuration.ShipkitConfigurationPlugin; |
14 | 13 | import org.shipkit.internal.gradle.snapshot.LocalSnapshotPlugin; |
15 | 14 | import org.shipkit.internal.gradle.util.GradleDSLHelper; |
@@ -56,19 +55,17 @@ public void apply(final Project project) { |
56 | 55 | final Jar sourcesJar = (Jar) project.getTasks().getByName(JavaLibraryPlugin.SOURCES_JAR_TASK); |
57 | 56 | final Jar javadocJar = (Jar) project.getTasks().getByName(JavaLibraryPlugin.JAVADOC_JAR_TASK); |
58 | 57 |
|
59 | | - GradleDSLHelper.publications(project, new Action<PublicationContainer>() { |
60 | | - public void execute(PublicationContainer publications) { |
61 | | - MavenPublication p = publications.create(PUBLICATION_NAME, MavenPublication.class, new Action<MavenPublication>() { |
62 | | - public void execute(MavenPublication publication) { |
63 | | - publication.from(project.getComponents().getByName("java")); |
64 | | - publication.artifact(sourcesJar); |
65 | | - publication.artifact(javadocJar); |
66 | | - publication.setArtifactId(((Jar) project.getTasks().getByName("jar")).getBaseName()); |
67 | | - PomCustomizer.customizePom(project, conf, publication); |
68 | | - } |
| 58 | + GradleDSLHelper.publications(project, publications -> { |
| 59 | + MavenPublication p = publications.create(PUBLICATION_NAME, MavenPublication.class, publication -> { |
| 60 | + publication.from(project.getComponents().getByName("java")); |
| 61 | + publication.artifact(sourcesJar); |
| 62 | + publication.artifact(javadocJar); |
| 63 | + DeferredConfiguration.deferredConfiguration(project, () -> { |
| 64 | + publication.setArtifactId(((Jar) project.getTasks().getByName("jar")).getBaseName()); |
69 | 65 | }); |
70 | | - LOG.info("{} - configured '{}' publication", project.getPath(), p.getArtifactId()); |
71 | | - } |
| 66 | + PomCustomizer.customizePom(project, conf, publication); |
| 67 | + }); |
| 68 | + LOG.info("{} - configured '{}' publication", project.getPath(), p.getArtifactId()); |
72 | 69 | }); |
73 | 70 |
|
74 | 71 | //so that we flesh out problems with maven publication during the build process |
|
0 commit comments