集成 jei 到开发环境中出现问题

Guy_Z


版本信息
你使用的系统:Windows10 64位系统
你使用的JDK: jdk-1.8.0_181
你使用的IDE: IntelliJ IDEA
你使用的IDE版本: 2019.3.3 x64
Forge版本: 1.16.3-34.1.0
Minecraft版本: 1.16.3
Mapping 文件版本: 20200514-1.16

出错图

错误情况简述

期望集成JEI到开发环境里,在build.gradle中加入了以下代码后,Reimport就出现以上问题。

repositories {
    maven {url = 'https://dvs1.progwml6.com/files/maven/'}
    maven {url = 'https://modmaven.k-4u.nl'}
}
dependencies {

    minecraft 'net.minecraftforge:forge:1.16.3-34.1.0'

    compileOnly fg.deobf("mezz.jei:jei-${mc_version}:${jei_version}:api")
    runtimeOnly fg.deobf("mezz.jei:jei-${mc_version}:${jei_version}")

}

FledgeXu


这个是因为下载JEI的时候出错了,根据我的经验你得加上代理才能正常的下载,而且最好还是是美国地区的代理。



你的错误提示显示你还添加了 com.feed-the-beast.mods:ftb-gui-library:1.0.0.10(这个 https://github.com/FTBTeam/FTB-GUI-Library),那么问题来了,JEI 不依赖这个的,pom 里也没有声明对 FTB GUI Library 的依赖,你是怎么把它弄进来的?请删除所有可能和这个有关的依赖项再试。


Guy_Z


build.gradle 中删除 jei 依赖后,Reimport便没有了此错误,应该是和JEI有关系的


Guy_Z


我在 C:\Users\Administrator\.gradle\目录和项目目录下的 gradle.properties 文件里都写入了代理,但似乎并不奏效:

systemProp.http.proxyHost=127.0.0.1
systemProp.http.proxyPort=1080
systemProp.https.nonProxyHosts=10.*|localhost

另附代理IP:107.148.240.162


FledgeXu


加上https代理,试试。如果还不行就上socks代理。



话说如果下载第三方需要反混淆的依赖Mod时,下载到一半中止,此时重新构建开发环境,会与forge本体一样不校验本地文件吗?


Guy_Z


build.gradle 中加入以下代码解决.

repositories {
    maven {url = 'https://maven.latmod.com/'}
}
dependencies {
    compile fg.deobf("com.feed_the_beast.mods:ftb-gui-library:1.0.0.18")
}


build.gradle 中删除 jei 依赖后,Reimport便没有了此错误,应该是和JEI有关系的

我还是很想知道你的整个 build.gradle 长什么样。

破案了,你使用的 JEI 7.3.2.29 里多声明了一个 FTB GUI Library 的依赖,它是用来实现 JEI 的 In-game Config GUI 的。这个依赖在稍后就被去掉了,因为它不是必须的。
所以真正的解决方案其实是把 JEI 更新到至少 7.3.2.35。这个版本的 JEI(的 pom 中)没有声明对 FTB GUI Library 的依赖,也就不会自动下载它了。


system


该主题在最后一个回复创建后7天后自动关闭。不再允许新的回复。