skylot/jadx · error · JadxRuntimeException

Type must be one of int, long, float, double, String or Obje

Error message

Type must be one of int, long, float, double, String or Object.

What it means

Error "Type must be one of int, long, float, double, String or Object." thrown in skylot/jadx.

Source

Thrown at jadx-gui/src/main/java/jadx/gui/device/debugger/DebugController.java:268

	protected static RuntimeType castType(String type) {
		RuntimeType rt = null;
		if (!StringUtils.isEmpty(type)) {
			rt = TYPE_MAP.get(type);
		}
		if (rt == null) {
			rt = POSSIBLE_TYPES[0];
		}
		return rt;
	}

	private void checkType(ArgType type, Object value) {
		if (!(type == ArgType.INT && value instanceof Integer)
				&& !(type == ArgType.STRING && value instanceof String)
				&& !(type == ArgType.LONG && value instanceof Long)
				&& !(type == ArgType.FLOAT && value instanceof Float)
				&& !(type == ArgType.DOUBLE && value instanceof Double)
				&& !(type == ArgType.OBJECT && value instanceof Long)) {
			throw new JadxRuntimeException("Type must be one of int, long, float, double, String or Object.");
		}
	}

	private boolean modifyValueInternal(ValueTreeNode valNode, RuntimeType type, Object value) {
		if (valNode instanceof RegTreeNode) {
			try {
				RegTreeNode regNode = (RegTreeNode) valNode;
				debugger.setValueSync(
						regNode.getRuntimeRegNum(),
						type,
						value,
						cur.frame.getThreadID(),
						cur.frame.getFrame().getID());
				lazyQueue.execute(() -> {
					setRegsNotUpdated();
					updateRegister((RegTreeNode) valNode, type, true);
				});
			} catch (SmaliDebuggerException e) {

View on GitHub (pinned to e738a26571)

Solutions

  1. Validate the user-supplied type string against the allowed set (int, long, float, double, String, Object) before creating the value, and surface the validation message in the UI.
  2. Trim and case-normalize the type input to avoid rejecting valid types due to formatting.

When it happens

Trigger: Thrown at jadx-gui/src/main/java/jadx/gui/device/debugger/DebugController.java:268 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/92e8f4c9b5181577. Report an issue: GitHub.