Skip to content

Commit 7f11715

Browse files
Inject services inside task constructor
1 parent f93adf7 commit 7f11715

File tree

2 files changed

+10
-10
lines changed

2 files changed

+10
-10
lines changed

.editorconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ ij_wrap_on_typing = false
1818

1919
[*.java]
2020
indent_style = tab
21-
ij_java_imports_layout = $*,|,*,|,javax.**,java.**,|
21+
ij_java_imports_layout = $*, |, *, |, javax.**, java.**, |, @*
2222
ij_java_names_count_to_use_import_on_demand = 999
2323
ij_java_class_count_to_use_import_on_demand = 999
2424
ij_java_align_consecutive_assignments = false

buildSrc/src/main/java/com/github/stickerifier/stickerify/JlinkTask.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import org.gradle.api.DefaultTask;
44
import org.gradle.api.file.DirectoryProperty;
55
import org.gradle.api.file.FileSystemOperations;
6+
import org.gradle.api.file.ProjectLayout;
67
import org.gradle.api.logging.LogLevel;
78
import org.gradle.api.plugins.JavaPluginExtension;
89
import org.gradle.api.provider.ListProperty;
@@ -14,6 +15,7 @@
1415
import org.gradle.jvm.toolchain.JavaCompiler;
1516
import org.gradle.jvm.toolchain.JavaToolchainService;
1617
import org.gradle.process.ExecOperations;
18+
import org.jetbrains.annotations.NotNull;
1719

1820
import javax.inject.Inject;
1921
import java.io.ByteArrayOutputStream;
@@ -23,33 +25,31 @@
2325
public abstract class JlinkTask extends DefaultTask {
2426

2527
@Input
26-
public abstract ListProperty<String> getOptions();
28+
public abstract ListProperty<@NotNull String> getOptions();
2729

2830
@Input
29-
public abstract ListProperty<String> getModules();
31+
public abstract ListProperty<@NotNull String> getModules();
3032

3133
@OutputDirectory
3234
public abstract DirectoryProperty getOutputDirectory();
3335

3436
@Nested
35-
protected abstract Property<JavaCompiler> getJavaCompiler();
36-
37-
@Inject
38-
protected abstract JavaToolchainService getJavaToolchainService();
37+
protected abstract Property<@NotNull JavaCompiler> getJavaCompiler();
3938

4039
@Inject
4140
protected abstract FileSystemOperations getFs();
4241

4342
@Inject
4443
protected abstract ExecOperations getExec();
4544

46-
public JlinkTask() {
45+
@Inject
46+
public JlinkTask(ProjectLayout layout, JavaToolchainService javaToolchain) {
4747
getOptions().convention(List.of());
4848
getModules().convention(List.of("ALL-MODULE-PATH"));
49-
getOutputDirectory().convention(getProject().getLayout().getBuildDirectory().dir("jlink"));
49+
getOutputDirectory().convention(layout.getBuildDirectory().dir("jlink"));
5050

5151
var toolchain = getProject().getExtensions().getByType(JavaPluginExtension.class).getToolchain();
52-
getJavaCompiler().convention(getJavaToolchainService().compilerFor(toolchain));
52+
getJavaCompiler().convention(javaToolchain.compilerFor(toolchain));
5353
}
5454

5555
@TaskAction

0 commit comments

Comments
 (0)