diff options
author | modmuss50 <modmuss50@gmail.com> | 2020-07-26 20:57:58 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-07-26 20:57:58 +0100 |
commit | 9d318dd859dc8a4c8f034c56b23111a6a9399377 (patch) | |
tree | 06e731fc95661dc7918ed8d60b55dde3710fad4a /src/main/java/net/fabricmc/loom | |
parent | bc3ff0180af1983d0ac8bc265d42e37f6e7e8077 (diff) | |
download | architectury-loom-9d318dd859dc8a4c8f034c56b23111a6a9399377.tar.gz architectury-loom-9d318dd859dc8a4c8f034c56b23111a6a9399377.tar.bz2 architectury-loom-9d318dd859dc8a4c8f034c56b23111a6a9399377.zip |
Use jetbrains annotations by default. (#240)
Minecraft is also remapped to use them. Any use of jsr should be removed.
Diffstat (limited to 'src/main/java/net/fabricmc/loom')
3 files changed, 11 insertions, 0 deletions
diff --git a/src/main/java/net/fabricmc/loom/providers/LaunchProvider.java b/src/main/java/net/fabricmc/loom/providers/LaunchProvider.java index 94dd0e7d..252847dc 100644 --- a/src/main/java/net/fabricmc/loom/providers/LaunchProvider.java +++ b/src/main/java/net/fabricmc/loom/providers/LaunchProvider.java @@ -74,6 +74,7 @@ public class LaunchProvider extends DependencyProvider { addDependency("net.fabricmc:dev-launch-injector:" + Constants.DEV_LAUNCH_INJECTOR_VERSION, "runtimeOnly"); addDependency("net.minecrell:terminalconsoleappender:" + Constants.TERMINAL_CONSOLE_APPENDER_VERSION, "runtimeOnly"); + addDependency("org.jetbrains:annotations:" + Constants.JETBRAINS_ANNOTATIONS_VERSION, "compileOnly"); } private File getLog4jConfigFile() { diff --git a/src/main/java/net/fabricmc/loom/providers/MinecraftMappedProvider.java b/src/main/java/net/fabricmc/loom/providers/MinecraftMappedProvider.java index 75eda8bb..4015fac9 100644 --- a/src/main/java/net/fabricmc/loom/providers/MinecraftMappedProvider.java +++ b/src/main/java/net/fabricmc/loom/providers/MinecraftMappedProvider.java @@ -29,8 +29,10 @@ import java.io.IOException; import java.nio.file.Path; import java.util.Arrays; import java.util.Collection; +import java.util.Map; import java.util.function.Consumer; +import com.google.common.collect.ImmutableMap; import org.gradle.api.Project; import net.fabricmc.loom.util.TinyRemapperMappingsHelper; @@ -40,6 +42,12 @@ import net.fabricmc.loom.util.Constants; import net.fabricmc.loom.util.DependencyProvider; public class MinecraftMappedProvider extends DependencyProvider { + private static final Map<String, String> JSR_TO_JETBRAINS = new ImmutableMap.Builder<String, String>() + .put("javax/annotation/Nullable", "org/jetbrains/annotations/Nullable") + .put("javax/annotation/Nonnull", "org/jetbrains/annotations/NotNull") + .put("javax/annotation/concurrent/Immutable", "org/jetbrains/annotations/Unmodifiable") + .build(); + private File minecraftMappedJar; private File minecraftIntermediaryJar; @@ -120,6 +128,7 @@ public class MinecraftMappedProvider extends DependencyProvider { public TinyRemapper getTinyRemapper(String fromM, String toM) throws IOException { return TinyRemapper.newRemapper() .withMappings(TinyRemapperMappingsHelper.create(getExtension().getMappingsProvider().getMappings(), fromM, toM, true)) + .withMappings(out -> JSR_TO_JETBRAINS.forEach(out::acceptClass)) .renameInvalidLocals(true) .rebuildSourceFilenames(true) .build(); diff --git a/src/main/java/net/fabricmc/loom/util/Constants.java b/src/main/java/net/fabricmc/loom/util/Constants.java index 933503af..cfd05666 100644 --- a/src/main/java/net/fabricmc/loom/util/Constants.java +++ b/src/main/java/net/fabricmc/loom/util/Constants.java @@ -57,4 +57,5 @@ public class Constants { public static final String MIXIN_COMPILE_EXTENSIONS_VERSION = "0.3.1.5"; public static final String DEV_LAUNCH_INJECTOR_VERSION = "0.2.1+build.8"; public static final String TERMINAL_CONSOLE_APPENDER_VERSION = "1.2.0"; + public static final String JETBRAINS_ANNOTATIONS_VERSION = "19.0.0"; } |