Если вы моддинг с ForgeGradle 3, вы можете запуститьClient сейчас, потому что ForgeGradle 3. обновлен.
Если вы не моддинг с ForgeGradle 3.x, вы ничего не можете сделать с официальным ForgeGradle. Подделать группу разработчиков никогда не исправить. (см. https://github.com/MinecraftForge/ForgeGradle/issues/652)
Вы можете использовать форк ForgeGradle или сделать форк из ForgeGradle.
Я сделал форк из ForgeGradle 2.3 и 1.2 , чтобы вы могли их использовать. (если есть вопрос по поводу моих вилок, пожалуйста, укажите в них проблему.) Если вы используете ForgeGradle, который не является 2.3 или 1.2 или если вы не хотите использовать мой форк, вы можете сделать форк из ForgeGradle.
почему это произошло и что вы должны изменить в своем форке
почему это произошло
Код причины этого cra sh - это hackNatives()
функция в GradleStart
. функция hackNatives
устанавливает ClassLoader.sys_paths
null
для сброса ClassLoader.usr_paths
.
До 8u242, ClassLoader.loadLibrary
проверяет, является ли sys_paths
1030 * и сбрасывает sys_paths
и usr_paths
, если sys_paths
это null
.
Но поскольку 8u242, sys_paths
и usr_paths
инициализируются при запуске JVM, и ClassLoader.loadLibrary
никогда не проверяют, является ли sys_paths
null
. (см. http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/rev/1d666f78532a/)
что вы должны изменить в своем форке
Мы должны переписать в hackNatives()
в GradleStart
классе, в каталоге ресурсов , Для сброса usr_paths
выполните usr_paths = initializePath("java.library.path")
с отражением в hackNatives()
. (вы можете ссылаться на hackNatives в minecraft forge 1.15.x userdev: LaunchTesting.java # L126 )