client.jar

(Redirected from Client)
Jump to navigation Jump to search

This feature is exclusive to Java Edition.
 
client.jar
Java Edition 1.21.5.png: Infobox image for client.jar the program in Minecraft
Author(s)
Platform(s)

WindowsmacOSLinux and other platforms that support running a JVM

Written in

Java Java

Latest version
Release date

May 16, 2009

Size

≈ 26 MiB

License

EULA

Source available

Partial

Links

client.jar is a JAR file containing the Minecraft program and some default resources. Its launched by the user using the Minecraft Launcher.

The client.jar file is named using the version number after download, e.g., 1.21.5.jar. The name client.jar is used on the distribution server, and commonly as a general term for all versions of the file. It is located at .minecraft/versions/version/version.jar, next to the client.json file.

It can be opened with a file archiving program that supports ZIP files.

Contents[edit | edit source]

The file contains some, but not all, default resources. For instance, textures from the vanilla resource pack are stored here, but sound files are stored separately.

It also stores the Minecraft program in form of Java class files. These files have names such as "acq" or "qn", because they have been obfuscated with the ProGuard tool to hide the original names. However, they can still be disassembled or decompiled to understand their functionality and aid modding, and can be deobfuscated using the official obfuscation maps or community-created obfuscation maps such as Yarn.

Directory structure[edit | edit source]

The client.jar file has the following directory structure. Note that Java class files have been omitted for brevity.

  • File archive.png: Sprite image for archive in Minecraft version.jar
    • File directory.png: Sprite image for directory in Minecraft META-INF: Information for the JVM, including signature information, which may be used to check if the game is modified.
      • File file.png: Sprite image for file in Minecraft MANIFEST.MF
      • File file.png: Sprite image for file in Minecraft MOJANGCS.RSA
      • File file.png: Sprite image for file in Minecraft MOJANGCS.SF
    • File directory.png: Sprite image for directory in Minecraft assets: The vanilla resource pack.
      • File directory.png: Sprite image for directory in Minecraft minecraft
        • File directory.png: Sprite image for directory in Minecraft atlases
        • File directory.png: Sprite image for directory in Minecraft blockstates
        • File directory.png: Sprite image for directory in Minecraft font
        • File directory.png: Sprite image for directory in Minecraft items
        • File directory.png: Sprite image for directory in Minecraft lang
          • File file.png: Sprite image for file in Minecraft en_us.json
        • File directory.png: Sprite image for directory in Minecraft models
        • File directory.png: Sprite image for directory in Minecraft particles
        • File directory.png: Sprite image for directory in Minecraft shaders
        • File directory.png: Sprite image for directory in Minecraft texts
        • File directory.png: Sprite image for directory in Minecraft textures
        • File file.png: Sprite image for file in Minecraft gpu_warnlist.json
        • File file.png: Sprite image for file in Minecraft regional_compliancies.json
      • File file.png: Sprite image for file in Minecraft .mcassetsroot: Empty file identifying the vanilla resource pack.
    • File directory.png: Sprite image for directory in Minecraft com
      • File directory.png: Sprite image for directory in Minecraft mojang
        • File directory.png: Sprite image for directory in Minecraft blaze3d
    • File directory.png: Sprite image for directory in Minecraft data: The vanilla data pack.
      • File directory.png: Sprite image for directory in Minecraft minecraft
        • File directory.png: Sprite image for directory in Minecraft advancement
        • File directory.png: Sprite image for directory in Minecraft banner_pattern
        • File directory.png: Sprite image for directory in Minecraft chat_type
        • File directory.png: Sprite image for directory in Minecraft damage_type
        • File directory.png: Sprite image for directory in Minecraft datapacks
          • File directory.png: Sprite image for directory in Minecraft bundle
          • File directory.png: Sprite image for directory in Minecraft trade_rebalance
        • File directory.png: Sprite image for directory in Minecraft dimension_type
        • File directory.png: Sprite image for directory in Minecraft enchantment
        • File directory.png: Sprite image for directory in Minecraft enchantment_provider
          • File directory.png: Sprite image for directory in Minecraft raid
        • File directory.png: Sprite image for directory in Minecraft jukebox_song
        • File directory.png: Sprite image for directory in Minecraft loot_table
        • File directory.png: Sprite image for directory in Minecraft recipe
        • File directory.png: Sprite image for directory in Minecraft structure
        • File directory.png: Sprite image for directory in Minecraft tags
        • File directory.png: Sprite image for directory in Minecraft trim_material
        • File directory.png: Sprite image for directory in Minecraft trim_pattern
        • File directory.png: Sprite image for directory in Minecraft wolf_variant
        • File directory.png: Sprite image for directory in Minecraft worldgen
      • File file.png: Sprite image for file in Minecraft .mcassetsroot: Empty file identifying the vanilla data pack.
    • File directory.png: Sprite image for directory in Minecraft net
      • File directory.png: Sprite image for directory in Minecraft minecraft
        • File directory.png: Sprite image for directory in Minecraft client
        • File directory.png: Sprite image for directory in Minecraft data
        • File directory.png: Sprite image for directory in Minecraft obfuscate
        • File directory.png: Sprite image for directory in Minecraft server
        • File directory.png: Sprite image for directory in Minecraft util
    • File file.png: Sprite image for file in Minecraft flightrecorder-config.jfc
    • File file.png: Sprite image for file in Minecraft pack.png: Vanilla resource pack and data pack icon.
    • File file.png: Sprite image for file in Minecraft version.json

History[edit | edit source]

[hide]Java Edition pre-Classic
mc-161607Notch started distributing the game to other people, constituting the creation of client.jar.
[hide]Java Edition Classic
0.0.14a_08Signature files, MOJANG_C.SF and MOJANG_C.DSA have been added to the META-INF folder.
[hide]Java Edition Indev
0.3120091223-0040Java class files have been moved from client.jar/com/mojang/minecraft to client.jar/net/minecraft.
[hide]Java Edition Infdev
20100627Java class files are now all located in the root directory of client.jar.
[hide]Java Edition
1.2.5The signature files, MOJANG_C.SF and MOJANG_C.DSA have been moved to CODESIGN.SF and CODESIGN.RSA, respectively.
1.21.424w45aNew entry point net.minecraft.client.data.Main is present in client.jar, with similar command line structure as data generator in server.jar.

See also[edit | edit source]

Navigation[edit | edit source]