theonedev/onedev · error · ExplicitException

Param not found: %s

Error message

Param not found: %s

What it means

PassthroughValues.getValues looks up paramName in the paramCombination's inputs and throws when the job was run without that parameter, i.e. the passthrough parameter references a name that was not provided at build submission.

Source

Thrown at server-core/src/main/java/io/onedev/server/buildspec/param/instance/PassthroughValues.java:59

	private static List<String> getParamChoices() {
		List<ParamSpec> paramSpecs = ParamSpec.list();
		if (paramSpecs != null) 
			return paramSpecs.stream().map(it->it.getName()).collect(Collectors.toList());
		else
			return new ArrayList<>();
	}
	
	@Override
	public List<List<String>> getValues(Build build, ParamCombination paramCombination) {
		if (paramCombination != null) {
			Input param = paramCombination.getParamInputs().get(paramName);
			if (param != null) {
				List<List<String>> values = new ArrayList<>();
				values.add(param.getValues());
				return values;
			} else {
				String message = String.format("Param not found: %s", paramName);
				throw new ExplicitException(message);
			}
		} else {
			return new ArrayList<>();
		}
	}

	@Override
	public boolean equals(Object other) {
		if (!(other instanceof PassthroughValues)) 
			return false;
		if (this == other)
			return true;
		PassthroughValues otherPassthroughValues = (PassthroughValues) other;
		return new EqualsBuilder()
			.append(paramName, otherPassthroughValues.paramName)
			.isEquals();
	}

View on GitHub (pinned to d44925c47c)

Solutions

  1. Ensure the build is triggered with a value for the referenced parameter.
  2. Check the parameter name spelling against the job's parameter list.
  3. Provide a default so the parameter is always present in the combination.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at server-core/src/main/java/io/onedev/server/buildspec/param/instance/PassthroughValues.java:59 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of theonedev/onedev@d44925c47c (2026-09-06). Data as JSON: /api/errors/4a24b451bc12d131. Report an issue: GitHub.