|
4 | 4 | import org.mcphackers.mcp.MCPPaths;
|
5 | 5 | import org.mcphackers.mcp.tasks.mode.TaskParameter;
|
6 | 6 | import org.mcphackers.mcp.tools.FileUtil;
|
| 7 | +import org.mcphackers.mcp.tools.Util; |
7 | 8 |
|
8 | 9 | import javax.tools.*;
|
9 | 10 |
|
@@ -73,13 +74,22 @@ protected Stage[] setStages() {
|
73 | 74 | List<String> options = new ArrayList<>(Arrays.asList("-d", binPath.toString()));
|
74 | 75 |
|
75 | 76 | int sourceVersion = mcp.getOptions().getIntParameter(TaskParameter.SOURCE_VERSION);
|
76 |
| - if (sourceVersion >= 0) { |
77 |
| - options.addAll(Arrays.asList("-source", Integer.toString(sourceVersion))); |
78 |
| - } |
79 |
| - |
80 | 77 | 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 | + } |
83 | 93 | }
|
84 | 94 |
|
85 | 95 | List<String> bootcp = new ArrayList<>();
|
|
0 commit comments