打开DiscordSRV插件jar文件显示乱码,如何查看其源代码?
为什么会出现这个报错
jar是Java语言编译后生成的二进制归档文件,内部存储的是编译后的.class字节码、资源配置等非纯文本内容,无法直接用普通文本编辑器读取,所以用VS Code打开就会触发编码报错、显示乱码。
两种可行的解决方式
方式一:获取官方源代码(优先选)
DiscordSRV是开源的Minecraft插件,你下载jar文件的渠道一般会同步提供后缀为sources.jar的源码包,或者单独的zip格式源码压缩包。下载对应版本的源码包解压后,就可以直接用VS Code打开里面的.java后缀的源代码文件查看。
方式二:反编译现有jar文件
如果找不到对应版本的官方源码,可以用反编译工具把jar内的字节码转回可读的Java代码,新手可选两种操作路径:
- 用独立反编译工具:下载JD-GUI工具,打开后直接把jar文件拖入窗口,就能直接浏览反编译后的全部代码,也可以将代码批量导出为文件夹,之后用VS Code打开导出的文件夹即可
- 用VS Code扩展:在VS Code的扩展商店搜索安装「Java Decompiler」扩展,安装完成后右键点击你的jar文件,选择「Decompile Java」选项,就能直接在VS Code内查看反编译后的代码
注意:反编译得到的代码和官方原始源码会有少量差异,比如注释会丢失、部分变量名会变成自动生成的名称,如果要参考完整代码优先选择官方源码。
内容的提问来源于stack exchange,提问作者Bread_butter
相关产品推荐
相关产品推荐

