skylot/jadx · error · RuntimeException

Field not found: {}.{}

Error message

Field not found: {}.{}

What it means

Error "Field not found: {}.{}" thrown in skylot/jadx.

Source

Thrown at jadx-gui/src/main/java/jadx/gui/cache/code/disk/adapters/FieldNodeAdapter.java:36

	@Override
	public void write(DataOutput out, FieldNode value) throws IOException {
		FieldInfo fieldInfo = value.getFieldInfo();
		out.writeUTF(fieldInfo.getDeclClass().getRawName());
		out.writeUTF(fieldInfo.getShortId());
	}

	@Override
	public FieldNode read(DataInput in) throws IOException {
		String cls = in.readUTF();
		String sign = in.readUTF();
		ClassNode clsNode = root.resolveRawClass(cls);
		if (clsNode == null) {
			throw new RuntimeException("Class not found: " + cls);
		}
		FieldNode fieldNode = clsNode.searchFieldByShortId(sign);
		if (fieldNode == null) {
			throw new RuntimeException("Field not found: " + cls + "." + sign);
		}
		return fieldNode;
	}
}

View on GitHub (pinned to e738a26571)

Solutions

  1. Verify the field name and short ID exist in the class node before building the adapter; if missing, refresh the class node from the decompiler.
  2. Guard against renamed or obfuscated fields by resolving through the alias/original name mapping when the direct lookup fails.

When it happens

Trigger: Thrown at jadx-gui/src/main/java/jadx/gui/cache/code/disk/adapters/FieldNodeAdapter.java:36 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of skylot/jadx@e738a26571 (2026-08-14). Data as JSON: /api/errors/797ed0d7bdc0011c. Report an issue: GitHub.