App manifest runtime is behind target version
Specifying a runtime version in app.json is optional. When omitted, the compiler automatically detects the runtime that matches the target server. When a runtime is explicitly set, it locks the project to that runtime’s AL language feature set — regardless of what the target server supports.
If the specified runtime falls behind the targeted application or platform version, newer AL language features and runtime capabilities are unavailable to the project. The compiler silently restricts the available feature set to the older runtime, even though the target server would accept a higher one.
Update the runtime value to match the targeted version, or remove it entirely to let the compiler select the correct runtime automatically.
Example
{
"application": "25.0.0.0",
"platform": "25.0.0.0",
"runtime": "12.0" // App manifest runtime is behind target version [LC0033]
}The project targets application version 25.0 but the runtime is set to 12.0, which corresponds to Business Central 2023 release wave 2. The runtime matching version 25.0 is 14.0:
{
"application": "25.0.0.0",
"platform": "25.0.0.0",
"runtime": "14.0"
}Alternatively, remove the runtime property entirely to let the compiler select the correct runtime automatically.
Exception
When the extension targets customers on older Business Central versions, keeping the runtime intentionally low ensures compatibility with those servers.
See also
- Choose runtime version in AL on Microsoft Learn