{"record":{"id":"8e75a2c8c004bfd5","repo":"Unity-Technologies/UnityCsReference","slug":"launching-for-build-target-buildtarget-is-not-su","errorCode":null,"errorMessage":"Launching for build target {buildTarget} is not supported: There is no build post-processor available.","messagePattern":"Launching for build target (.+?) is not supported: There is no build post-processor available\\.","errorType":"exception","errorClass":"UnityException","httpStatus":null,"severity":"error","filePath":"Editor/Mono/BuildPipeline/PostprocessBuildPlayer.cs","lineNumber":214,"sourceCode":"            {\n                BuildLaunchPlayerArgs args;\n                args.target = buildTarget;\n                args.playerPackage = BuildPipeline.GetPlaybackEngineDirectory(buildTarget, options);\n                args.installPath = path;\n                args.productName = productName;\n                args.options = options;\n                args.report = buildReport;\n\n                var launchResult = postprocessor.LaunchPlayer(args);\n                // If platform didn't provide any platform specific results, at the very least provide default implementation\n                if (launchResult == null)\n                    launchResult = new DefaultLaunchReport(NamedBuildTarget.FromActiveSettings(buildTarget), LaunchResult.Unknown);\n\n                BuildPipelineInterfaces.OnPostprocessLaunch(launchResult);\n            }\n            else\n            {\n                throw new UnityException(\n                    $\"Launching for build target {buildTarget} is not supported: There is no build post-processor available.\");\n            }\n        }\n\n        public static LaunchResult GetLaunchResult(IReadOnlyList<IDeploymentLaunchResult> deploymentLaunchResults)\n        {\n            var successLaunches = 0;\n            foreach (var r in deploymentLaunchResults)\n            {\n                if (r.Success)\n                    successLaunches++;\n            }\n\n            if (successLaunches == 0)\n                return LaunchResult.Failed;\n            if (successLaunches == deploymentLaunchResults.Count)\n                return LaunchResult.Succeeded;\n            return LaunchResult.PartiallySucceeded;","sourceCodeStart":196,"sourceCodeEnd":232,"githubUrl":"https://github.com/Unity-Technologies/UnityCsReference/blob/225b0fbdb57cc17d094e8056b71f8314aba56f73/Editor/Mono/BuildPipeline/PostprocessBuildPlayer.cs#L196-L232","documentation":"Raised by the launch path in PostprocessBuildPlayer when ModuleManager.GetBuildPostProcessor(buildTarget) returns null at launch time, meaning no platform module registered a post-processor capable of launching the player for that target.","triggerScenarios":"Calling LaunchPlayer/Launch for a build target whose platform module is not installed or does not implement IBuildPostprocessor.LaunchPlayer; the build target's support module is missing from the editor install.","commonSituations":"Trying to launch (Run) a build for a target whose support module was never added (e.g. console NDA modules not present); launching for a target that can build but cannot be auto-launched from the editor.","solutions":["Install the target's build support module via Unity Hub / Module Manager before launching.","Use 'Build' instead of 'Build and Run' for targets without launch support, then deploy/launch manually.","Confirm GetBuildPostProcessor returns non-null before attempting to launch."],"exampleFix":"// before\nPostprocessBuildPlayer.LaunchPlayer(buildTarget, ...);\n\n// after\nif (ModuleManager.GetBuildPostProcessor(buildTarget) == null)\n    EditorUtility.DisplayDialog(\"Launch\", $\"No launch support for {buildTarget}. Install the module or build only.\", \"OK\");\nelse\n    PostprocessBuildPlayer.LaunchPlayer(buildTarget, ...);","handlingStrategy":"validation","validationCode":"if (ModuleManager.GetBuildPostProcessor(buildTarget) == null)\n    throw new UnityException($\"No build post-processor for {buildTarget}; install the module or build-only.\");","typeGuard":"static bool CanLaunch(BuildTarget t) => ModuleManager.GetBuildPostProcessor(t) != null;","tryCatchPattern":null,"preventionTips":["Check for a post-processor before invoking LaunchPlayer.","Use Build (not Build and Run) for targets lacking launch support."],"tags":["launch","build-pipeline","module-manager","post-processor"],"backgroundTag":null,"analyzedSha":"225b0fbdb57cc17d094e8056b71f8314aba56f73","analyzedAt":"2026-08-13T19:07:19.849Z","schemaVersion":2},"datasetVersion":"2026-08-13T19:17:28.613Z"}