HMCL-dev/HMCL · error · JsonParseException
CurseFile. cannot be empty.
Error message
CurseFile.{projectID|fileID} cannot be empty. What it means
Validation of the CurseFile entry inside an MCBBS manifest: projectID or fileID is 0, meaning the CurseForge project/file identifiers were missing. Without them HMCL cannot build the download URL, so the manifest entry is rejected.
Solutions
- Fix the manifest entry to include valid nonzero projectID and fileID
- Remove the broken CurseFile entry or replace it with a direct URL
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at HMCLCore/src/main/java/org/jackhuang/hmcl/modpack/mcbbs/McbbsModpackManifest.java:350 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of HMCL-dev/HMCL@24702dc5a0 (2026-09-10).
Data as JSON: /api/errors/6e825d12ed13e13a.
Report an issue: GitHub.
Appendix: source
Thrown at HMCLCore/src/main/java/org/jackhuang/hmcl/modpack/mcbbs/McbbsModpackManifest.java:350
@Override
public void validate() throws JsonParseException, TolerableValidationException {
super.validate();
if (projectID == 0 || fileID == 0) {
throw new JsonParseException("CurseFile.{projectID|fileID} cannot be empty.");
}
}View on GitHub (pinned to 24702dc5a0)