Skip to content

Commit ca2e3c5

Browse files
committed
HHH-18644 - New and improved hibernate-maven-plugin
- Add a new Gradle task to generate the Maven wrapper and wire it in the build - Remove the Maven wrapper files from the checked in sources Signed-off-by: Koen Aers <[email protected]>
1 parent 2eb94df commit ca2e3c5

File tree

5 files changed

+41
-428
lines changed

5 files changed

+41
-428
lines changed

local-build-plugins/src/main/java/org/hibernate/build/maven/embedder/MavenEmbedderPlugin.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,14 @@ public void apply(Project project) {
104104
task.dependsOn( "prepareWorkspace", "installHibernateCore", "installHibernateScanJandex");
105105
} );
106106

107+
final TaskProvider<MavenWrapperTask> createMavenWrapperTask = project.getTasks().register( "createMavenWrapper", MavenWrapperTask.class, (task) -> {
108+
task.setGroup("maven embedder");
109+
task.getMavenEmbedderService().set( embedderServiceProvider );
110+
task.usesService( embedderServiceProvider );
111+
task.getIntegrationTestSourcesFolder().set( workingDirectory.get().dir( "src/it/enhance" ) );
112+
task.dependsOn( "prepareWorkspace" );
113+
} );
114+
107115
final TaskProvider<MavenInstallArtifactTask> installHibernateMavenPluginTask = project.getTasks().register( "installHibernateMavenPlugin", MavenInstallArtifactTask.class, (task) -> {
108116
task.setGroup( "maven embedder" );
109117
task.getMavenEmbedderService().set( embedderServiceProvider );
@@ -121,7 +129,7 @@ public void apply(Project project) {
121129
task.getMavenEmbedderService().set( embedderServiceProvider );
122130
task.usesService( embedderServiceProvider );
123131

124-
task.dependsOn("installHibernateMavenPlugin");
132+
task.dependsOn("createMavenWrapper", "installHibernateMavenPlugin");
125133

126134
} );
127135

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
package org.hibernate.build.maven.embedder;
2+
3+
import org.gradle.api.DefaultTask;
4+
import org.gradle.api.file.DirectoryProperty;
5+
import org.gradle.api.provider.Property;
6+
import org.gradle.api.services.ServiceReference;
7+
import org.gradle.api.tasks.InputDirectory;
8+
import org.gradle.api.tasks.TaskAction;
9+
10+
import java.util.List;
11+
12+
public abstract class MavenWrapperTask extends DefaultTask {
13+
14+
@ServiceReference
15+
abstract Property<MavenEmbedderService> getMavenEmbedderService();
16+
17+
@InputDirectory
18+
abstract DirectoryProperty getIntegrationTestSourcesFolder();
19+
20+
@TaskAction
21+
public void runInvoker() {
22+
getMavenEmbedderService().get().execute( constructTaskAndArgs());
23+
}
24+
25+
private String[] constructTaskAndArgs() {
26+
return new String[] {
27+
"wrapper:wrapper",
28+
"-f" + getIntegrationTestSourcesFolder().get().getAsFile().getAbsolutePath()
29+
};
30+
}
31+
32+
}

tooling/hibernate-maven-plugin/src/it/enhance/.mvn/wrapper/maven-wrapper.properties

Lines changed: 0 additions & 19 deletions
This file was deleted.

tooling/hibernate-maven-plugin/src/it/enhance/mvnw

Lines changed: 0 additions & 259 deletions
This file was deleted.

0 commit comments

Comments
 (0)