added tar distribution to jlink plugin
All checks were successful
CI / build (push) Successful in 2m45s
All checks were successful
CI / build (push) Successful in 2m45s
This commit is contained in:
@@ -2,11 +2,8 @@ package net.woggioni.gradle.graalvm;
|
||||
|
||||
import org.gradle.api.Plugin;
|
||||
import org.gradle.api.Project;
|
||||
import org.gradle.api.Task;
|
||||
import org.gradle.api.artifacts.ConfigurationContainer;
|
||||
import org.gradle.api.file.FileCollection;
|
||||
import org.gradle.api.file.ProjectLayout;
|
||||
import org.gradle.api.plugins.BasePlugin;
|
||||
import org.gradle.api.plugins.BasePluginExtension;
|
||||
import org.gradle.api.plugins.ExtensionContainer;
|
||||
import org.gradle.api.plugins.JavaApplication;
|
||||
@@ -14,15 +11,17 @@ import org.gradle.api.plugins.JavaLibraryPlugin;
|
||||
import org.gradle.api.plugins.JavaPlugin;
|
||||
import org.gradle.api.provider.Provider;
|
||||
import org.gradle.api.tasks.TaskContainer;
|
||||
import org.gradle.api.tasks.bundling.Tar;
|
||||
import org.gradle.api.tasks.bundling.Zip;
|
||||
import org.gradle.jvm.tasks.Jar;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
public class JlinkPlugin implements Plugin<Project> {
|
||||
|
||||
public static final String JLINK_TASK_NAME = "jlink";
|
||||
public static final String JLINK_DIST_TASK_NAME = "jlinkDist";
|
||||
public static final String JLINK_DIST_ZIP_TASK_NAME = "jlinkDistZip";
|
||||
public static final String JLINK_DIST_TAR_TASK_NAME = "jlinkDistTar";
|
||||
|
||||
@Override
|
||||
public void apply(Project project) {
|
||||
project.getPluginManager().apply(JavaLibraryPlugin.class);
|
||||
@@ -40,7 +39,7 @@ public class JlinkPlugin implements Plugin<Project> {
|
||||
jlinkTask.getClasspath().set(classpath);
|
||||
});
|
||||
|
||||
Provider<Zip> jlinkZipTaskProvider = tasks.register(JLINK_DIST_TASK_NAME, Zip.class, zip -> {
|
||||
Provider<Zip> jlinkZipTaskProvider = tasks.register(JLINK_DIST_ZIP_TASK_NAME, Zip.class, zip -> {
|
||||
zip.getArchiveBaseName().set(project.getName());
|
||||
if(project.getVersion() != null) {
|
||||
zip.getArchiveVersion().set(project.getVersion().toString());
|
||||
@@ -49,8 +48,19 @@ public class JlinkPlugin implements Plugin<Project> {
|
||||
zip.from(jlinTaskProvider);
|
||||
});
|
||||
|
||||
Provider<Tar> jlinkTarTaskProvider = tasks.register(JLINK_DIST_TAR_TASK_NAME, Tar.class, zip -> {
|
||||
zip.getArchiveBaseName().set(project.getName());
|
||||
if(project.getVersion() != null) {
|
||||
zip.getArchiveVersion().set(project.getVersion().toString());
|
||||
}
|
||||
zip.getDestinationDirectory().set(basePluginExtension.getDistsDirectory());
|
||||
zip.from(jlinTaskProvider);
|
||||
});
|
||||
|
||||
|
||||
tasks.named(JLINK_TASK_NAME, JlinkTask.class, jlinkTask -> {
|
||||
jlinkTask.finalizedBy(jlinkZipTaskProvider);
|
||||
jlinkTask.finalizedBy(jlinkTarTaskProvider);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@@ -1,5 +1,5 @@
|
||||
lys.catalog.version=2025.02.05
|
||||
version.myGradlePlugins=2025.03.08
|
||||
version.myGradlePlugins=2025.04.15
|
||||
version.gradle=8.12
|
||||
|
||||
gitea.maven.url = https://gitea.woggioni.net/api/packages/woggioni/maven
|
||||
|
Reference in New Issue
Block a user