Skip to content

Commit 27fd37b

Browse files
committed
Set release flag on JDK 9+
1 parent 17562ac commit 27fd37b

File tree

1 file changed

+16
-6
lines changed

1 file changed

+16
-6
lines changed

src/main/java/org/mcphackers/mcp/tasks/TaskRecompile.java

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import org.mcphackers.mcp.MCPPaths;
55
import org.mcphackers.mcp.tasks.mode.TaskParameter;
66
import org.mcphackers.mcp.tools.FileUtil;
7+
import org.mcphackers.mcp.tools.Util;
78

89
import javax.tools.*;
910

@@ -73,13 +74,22 @@ protected Stage[] setStages() {
7374
List<String> options = new ArrayList<>(Arrays.asList("-d", binPath.toString()));
7475

7576
int sourceVersion = mcp.getOptions().getIntParameter(TaskParameter.SOURCE_VERSION);
76-
if (sourceVersion >= 0) {
77-
options.addAll(Arrays.asList("-source", Integer.toString(sourceVersion)));
78-
}
79-
8077
int targetVersion = mcp.getOptions().getIntParameter(TaskParameter.TARGET_VERSION);
81-
if (targetVersion >= 0) {
82-
options.addAll(Arrays.asList("-target", Integer.toString(targetVersion)));
78+
79+
// Set --release flag for newer Java versions
80+
if (Util.getJavaVersion() > 9) {
81+
if (sourceVersion <= 0) {
82+
sourceVersion = Util.getJavaVersion();
83+
}
84+
options.addAll(Arrays.asList("--release", Integer.toString(sourceVersion)));
85+
} else {
86+
if (sourceVersion >= 0) {
87+
options.addAll(Arrays.asList("-source", Integer.toString(sourceVersion)));
88+
}
89+
90+
if (targetVersion >= 0) {
91+
options.addAll(Arrays.asList("-target", Integer.toString(targetVersion)));
92+
}
8393
}
8494

8595
List<String> bootcp = new ArrayList<>();

0 commit comments

Comments
 (0)