Raven

From Ornithe Wiki
Revision as of 16:58, 12 August 2025 by Space Walker (talk | contribs) (add Raven page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Raven is Ornithe's patch for method throws clauses. They are used to modify methods attributes in Java class files.

See Exceptor for information on methods attributes and how these patches are applied.

Relevance

Most Minecraft versions before 1.8.2 Pre-release 5 had the exceptions from the methods attributes stripped from the jar. Raven was created in an effort to reconstruct what the original method throws clauses would have been in the source code.

File Specification

.excs files are UTF-8 encoded text files. Each line defines the relationship between a class and its outer class and, if applicable, outer method. A line has the following format.

<class name>	<method name>	<method type name>[	<exception class name>...]
  • class name: the internal name of the class.
  • method name: the method name.
  • method type descriptor: the descriptor describing the type of the method.
  • exception class name: the internal name of the exception class.