Skip to content

Commit 2e69206

Browse files
committed
Add jlinkOptions to JPackage tasks
To allow custom 'jlink' options to be specified.
1 parent 1f672c2 commit 2e69206

File tree

2 files changed

+9
-0
lines changed

2 files changed

+9
-0
lines changed

src/main/java/org/gradlex/javamodule/packaging/JavaModulePackagingExtension.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
import org.gradle.api.plugins.JavaApplication;
3737
import org.gradle.api.plugins.JavaPluginExtension;
3838
import org.gradle.api.plugins.jvm.JvmTestSuite;
39+
import org.gradle.api.provider.ListProperty;
3940
import org.gradle.api.provider.Property;
4041
import org.gradle.api.tasks.JavaExec;
4142
import org.gradle.api.tasks.SourceSet;
@@ -71,6 +72,7 @@ abstract public class JavaModulePackagingExtension {
7172
abstract public Property<String> getApplicationDescription();
7273
abstract public Property<String> getVendor();
7374
abstract public Property<String> getCopyright();
75+
abstract public ListProperty<String> getJlinkOptions();
7476
abstract public DirectoryProperty getJpackageResources();
7577
abstract public ConfigurableFileCollection getResources();
7678

@@ -237,6 +239,7 @@ private void registerTargetSpecificTasks(Target target, String applicationJarTas
237239
t.getVendor().convention(getVendor());
238240
t.getCopyright().convention(getCopyright());
239241
t.getJavaOptions().convention(application.getApplicationDefaultJvmArgs());
242+
t.getJlinkOptions().convention(getJlinkOptions());
240243
t.getOptions().convention(target.getOptions());
241244
t.getPackageTypes().convention(target.getPackageTypes());
242245
t.getResources().from(getResources());

src/main/java/org/gradlex/javamodule/packaging/tasks/Jpackage.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,9 @@ abstract public class Jpackage extends DefaultTask {
9999
@Input
100100
abstract public ListProperty<String> getJavaOptions();
101101

102+
@Input
103+
abstract public ListProperty<String> getJlinkOptions();
104+
102105
@Input
103106
abstract public ListProperty<String> getOptions();
104107

@@ -172,6 +175,9 @@ public void runJpackage() throws Exception {
172175
for (String javaOption : getJavaOptions().get()) {
173176
e.args("--java-options", javaOption);
174177
}
178+
for (String javaOption : getJlinkOptions().get()) {
179+
e.args("--jlink-options", javaOption);
180+
}
175181
});
176182

177183
File appImageFolder = requireNonNull(appImageParent.getAsFile().listFiles())[0];

0 commit comments

Comments
 (0)