<本站文本内容除另有声明外,转载时均必须注明出处。(详情…中文Minecraft Wiki是完全公开的。请勇于扩充与修正内容!Minecraft中文Wiki微博正在更新!或许有兴趣去看看想与其他用户进行编辑上的沟通?社区专页正是为此创建的。翻译或创建页面之前,不妨看看译名标准化Wiki条例页面。需要管理员的协助?在管理员告示板留言也许可以帮到您。>

混淆映射表

来自Minecraft Wiki
跳转至: 导航搜索
Information icon.svg
此特性为Java版独有。

混淆映射表Proguard用来映射被混淆的类和类成员在混淆前和混淆后的名称的。[1]19w36a以来所有版本的client.json中都会导出混淆映射表。在19w36a发布一小段时间后,Java版1.14.4client.json也获得更新,导出了混淆映射表。[2]

用途[编辑 | 编辑源代码]

混淆映射表原意是用来反混淆被混淆后的堆栈记录的(例如崩溃报告中的堆栈记录)。[3]

DinnerboneAdrian Östergård表示混淆映射表会使编写mod更方便。[4][5]Searge表示混淆映射表可以替代一些辅助程序与编辑器,例如Mod Coder Pack。[6]

第三方用途[编辑 | 编辑源代码]

该段落的内容不受Mojang StudiosMinecraft WikiMinecraft论坛的官方支持

混淆映射表中包含的信息足以反混淆Minecraft使之反编译出容易理解的代码。可能有辅助程序与编辑器能够方便地反编译反混淆后的Minecraft。

根据许可证,这类反混淆反编译后的代码只能私人使用。

许可证[编辑 | 编辑源代码]

每个混淆映射表开头都有一行字,表示这些映射表的许可证。

# (c) 2019 Microsoft Corporation.  All rights reserved.  This information is provided "as-is" and you bear the risk of using it. This information does not provide you with any legal rights to any intellectual property in any Microsoft product. You may copy and use this information for your internal, reference purposes. Microsoft makes no warranties, express or implied, with respect to the information provided here.

参考译文:

# (c) 2019 微软公司。保留所有权利。这些信息“按其现状”提供,且您使用它时需要自担风险。这些信息不为您提供任何微软产品中含有的任何知识产权的任何法律权利。您可以在您内部、以参考为目的复制、使用这些信息。对于此处提供的信息,微软不提供任何明示或暗示的担保。

历史[编辑 | 编辑源代码]

2019年9月3日Dinnerbone提到19w36a中会有一个“给mod制作者的小惊喜”。
Java版
1.1519w36a现在client.json中包含客户端和服务端的混淆映射表下载信息。
2019年9月4日Dinnerbone发布了Java版1.14.4的混淆映射表。

你知道吗[编辑 | 编辑源代码]

  • 19w36a(2019年9月4日)之后发布的所有Java版版本中,Combat Test 3是唯一一个没有混淆映射表的版本。
  • 在此之前的Combat Test发布了1.14.4的混淆映射表。
  • 之后的所有Combat Test都发布了混淆映射表,且基于已发布混淆映射表的版本。
  • 20w13b之后,# (c) 2019 Microsoft Corporation.仍然存在于在2020年发布的版本中的混淆映射表文件的许可证中。

参考[编辑 | 编辑源代码]