当前位置: 首页 > wzjs >正文

重庆网站建设百度推广月饼营销软文

重庆网站建设百度推广,月饼营销软文,不用下载就能看的网站的浏览器,wordpress文章美化原文链接:Minecraft Fabric - java.lang.NoClassDefFoundError HttpUriRequest 0.引言 在开发Fabric插件时难免需要引用外部库,如http客户端,websocket客户端之类。在IDEA内构建插件一切正常,也开启项目内的服务器进行测试&#…

原文链接:Minecraft Fabric - java.lang.NoClassDefFoundError HttpUriRequest

0.引言

在开发Fabric插件时难免需要引用外部库,如http客户端,websocket客户端之类。在IDEA内构建插件一切正常,也开启项目内的服务器进行测试,插件也能正常实现功能。于是就直接将构建后的插件丢给服主(帮一个在玩的服务器写的聊天互通插件)。但没一会就一堆消息发来说服务器一启动就会崩溃,我非常奇怪,明明在我电脑上能正常运行,为啥到其他电脑上就不行了??

后面一检查问题:java.lang.NoClassDefFoundError: org/apache/http/client/methods/HttpUriRequest

欸,很明显是缺少了HttpClient这个库,于是在网上查了很久。不得不吐槽一下国内Fabric模组开发环境,就不说有没有人去写模组了,毕竟闷声发大财的大佬挺多。但真的很少人去发Fabric相关的文章,就本文所提的Fabric缺库这个问题根本查不到,都是一些让引入依赖项,或者与Fabric无关的解决方法。那让我们看看怎么解决这个问题吧。

1. 解决方案

本方案适用于Gradle,Maven没用过请自行寻找解决方案。(毕竟官方的项目构建器默认用的Gradle)。先直接给出解决方法,然后再来说说为什么用Shadow Gradle这类Gradle插件不行。

你需要前往 build.gradledependencies 块中,使用 include (这个是Fabric Loom的独有方法,晚上依然查不到)方法添加包名。在构建时就会自动下载指定包并在构建时一并嵌入。

可以看到除了httpclient库,还引用了slf4j库。Apache组件普遍依赖commons-logging,我们可以将commons-logging重定向并使用slf4j输出日志。

我们可以用 jar tf xxx.jar查看打包后的jar结构,可以看到我们需要的依赖库也被打包进插件中了

包名不知道写什么?这一部分可以完全借助AI,例如:

提示词:
我开发的Fabric插件代码中引用了这些包
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
运行时:java.lang.NoClassDefFoundError: org/apache/http/HttpRequest
应该如何在 build.gradle的dependencies块中用include方法补全缺失包?

Q: 为什么不是用implementation而是include

A:
implementation
- 仅声明编译和运行时依赖
- 不会自动将依赖库打包到你的最终模组 JAR 文件中
- 适用于 Minecraft/Fabric API 这种已经由游戏本身提供的依赖

include
- 是 Fabric Loom 提供的特殊方法
- 会强制将依赖库打包到你的模组 JAR 中
- 适用于需要随模组分发的第三方库

2. 为什么 Shadow Gradle 不行?

Shadow Jar 是一个用于创建包含所有依赖项的可执行 JAR 文件的 Gradle 插件。它的主要目的是将项目的所有依赖项(包括传递依赖)合并到一个独立的可执行 JAR 文件中,以简化应用程序的部署和分发。

但是!如果我们用这个插件来打包Fabric插件,他会不仅会把项目中的所有依赖项打包进jar,而且还会破坏掉Fabric插件结构,使得无法被Fabric Loader加载。

通过上面的手动指定依赖项的方式打包插件,最终大小仅1.1MB

而通过 Shadow Gradle打包的插件,大小达到97MB,打开包查看发现塞了很多无关的东西。


文章转载自:

http://cJwDorKI.jpqmq.cn
http://rpT7Md6b.jpqmq.cn
http://O3mtNSm3.jpqmq.cn
http://b7kYx6L9.jpqmq.cn
http://QIRRlMHZ.jpqmq.cn
http://Rer1eFvR.jpqmq.cn
http://w71ambuP.jpqmq.cn
http://dRVXTc4K.jpqmq.cn
http://YDTK7bT0.jpqmq.cn
http://vIZwnomT.jpqmq.cn
http://1Q83vraB.jpqmq.cn
http://q6Mh0hau.jpqmq.cn
http://2bbdaa1E.jpqmq.cn
http://RD55jCtT.jpqmq.cn
http://go89J6jQ.jpqmq.cn
http://Hp9VvDY0.jpqmq.cn
http://uhlWw3SV.jpqmq.cn
http://dun5LRed.jpqmq.cn
http://oRsKqW5N.jpqmq.cn
http://gGsNciWd.jpqmq.cn
http://W0w4ia0H.jpqmq.cn
http://dzeLnEhG.jpqmq.cn
http://kttXKt3G.jpqmq.cn
http://3yKwx1dR.jpqmq.cn
http://yd6rn2Hu.jpqmq.cn
http://LcobGzSt.jpqmq.cn
http://tyNg2WBB.jpqmq.cn
http://j2I0oac8.jpqmq.cn
http://j8S2RkOz.jpqmq.cn
http://1P41a7TT.jpqmq.cn
http://www.dtcms.com/wzjs/713858.html

相关文章:

  • asp网站开发国内外现状南昌企业网站开发
  • 引用网站信息怎么做备注施工企业项目负责人现场带班时间少于80%施工时间扣多少分
  • 新手学做网站vs济南有哪些网站是做家具团购的
  • 怎么制作网站封面旅行社网站开发
  • 珠海建站网站模板教育网站制作企业
  • 网站解析ip地址企业管理咨询合同模板
  • 衡阳有线宽带网站做个网站多少钱合适
  • 陕西网渭南站网站 网页区别是什么
  • 网站建立于网页设计网站设计的建设目的
  • 住房建设厅官方网站书法网站建设
  • 商洛市住房和城乡建设局网站6.网站开发流程是什么
  • php网站制作工具网站透明背景
  • 网站标准尺寸物联网是干什么的用的
  • 重庆城乡规划和建设局网站百度平台推广
  • 人才网站建站成都高端网页设计公司
  • 网站制作进度表聊城定制网站建设公司
  • 做网站页面设计报价做彩票网站用什么服务器
  • 网站seo推广方案公司备案网站被注销吗
  • 柳南网站建设软件商城官方下载
  • 网站头部修改wordpress搜索标签页
  • 网站开发人员需要什么要求c2c网站特点
  • 网站站点连接不安全如何浏览国外网站?
  • 公司企业做网站违法吗山东省住房建设厅网站考试项目
  • wordpress合并长春seo网络优化招聘网
  • 网站开发创业计划书模板福建省建设干部培训中心网站首页
  • 做网站还有开发文档吗长安外贸网站建设
  • 武昌网站建设外贸做双语网站好还是单语网站
  • 做网站推广的技巧青岛seo服务
  • 电商网站设计模板dwwordpress首页点击图片弹出视频
  • 做网站毕设任务书淮北论坛官网