I saw discussion in https://github.com/MinecraftForge/ForgeGradle/pull/796 about creating custom channel.
So now I want to use yarn mapping instead of (not clearly licensed) official mapping, what should I do?
I tried this code:
channelProviders.addProvider(new ChannelProvider() {
Set<String> getChannels() {
println "channels"
return ImmutableSet.of('yarn')
}
File getMappingsFile(MCPRepo mcpRepo, Project project, String channel, String version) {
String desc = "net.fabricmc:yarn:" + version + ":v2@zip";
println 'get' + desc
return MavenArtifactDownloader.manual(project, desc, false);
}
})
but it didn't work. It seems that `channelProviders` get reset after I changed it. error says:
Error getting artifact: net.minecraft:mappings_yarn:1.0.1:null@zip from MCPRepo
java.lang.IllegalArgumentException: Unknown mapping provider: yarn_1, currently loaded: [stable_nodoc, snapshot_nodoc, stable, official, snapshot]
I would expect this yarn project has different syntax from mcp, but in that case I can write another program to fix that.