{"record":{"id":"dfd117cdc0f4d985","repo":"egametang/ET","slug":"generatestripedaotdlls-failed","errorCode":null,"errorMessage":"GenerateStripedAOTDlls failed","messagePattern":"GenerateStripedAOTDlls failed","errorType":"exception","errorClass":"Exception","httpStatus":null,"severity":"error","filePath":"Packages/cn.etetet.hybridclr/Scripts/Editor/Share/Commands/StripAOTDllCommand.cs","lineNumber":150,"sourceCode":"                BuildPlayerOptions buildPlayerOptions = new BuildPlayerOptions()\n                {\n                    scenes = EditorBuildSettings.scenes.Where(s => s.enabled).Select(s => s.path).ToArray(),\n                    locationPathName = location,\n                    options = buildOptions,\n                    target = target,\n                    targetGroup = BuildPipeline.GetBuildTargetGroup(target),\n#if UNITY_SERVER\n                    subtarget = (int)StandaloneBuildSubtarget.Server,\n#endif\n                };\n\n                var report = BuildPipeline.BuildPlayer(buildPlayerOptions);\n\n\n\n                if (report.summary.result != UnityEditor.Build.Reporting.BuildResult.Succeeded)\n                {\n                    throw new Exception(\"GenerateStripedAOTDlls failed\");\n                }\n            }\n            finally\n            {\n                CheckSettings.DisableMethodBridgeDevelopmentFlagChecking = false;\n                EditorUserBuildSettings.buildScriptsOnly = oldBuildScriptsOnly;\n                EditorUserBuildSettings.SetBuildLocation(target, oldBuildLocation);\n\n                switch (target)\n                {\n                    case BuildTarget.StandaloneWindows:\n                    case BuildTarget.StandaloneWindows64:\n                    {\n#if UNITY_EDITOR_WIN\n                        UnityEditor.WindowsStandalone.UserBuildSettings.createSolution = oldCreateSolution;\n#endif\n                        break;\n                    }","sourceCodeStart":132,"sourceCodeEnd":168,"githubUrl":"https://github.com/egametang/ET/blob/5cab01f7a8bee5f49f4781eebe9e2b1c6d7ebe0f/Packages/cn.etetet.hybridclr/Scripts/Editor/Share/Commands/StripAOTDllCommand.cs#L132-L168","documentation":"Thrown by StripAOTDllCommand when BuildPipeline.BuildPlayer (invoked in buildScriptsOnly mode to produce trimmed AOT assemblies) does not report BuildResult.Succeeded. The exception is a wrapper indicating the underlying Unity player build failed during the strip phase.","triggerScenarios":"The code sets buildScriptsOnly=true and runs a minimal BuildPlayer into a temp location to force IL2CPP stripping. If report.summary.result != Succeeded, this generic message is thrown, hiding the real cause which is in the preceding Unity build log.","commonSituations":"Compilation errors in the project; missing scripting define symbols or SDK/NDK misconfiguration for Android/iOS; an AOT-related linker error; disk space or path length issues on the temp build location; UNITY_SERVER subtarget misconfiguration.","solutions":["Read the full Unity Editor console / editor.log above this exception -- the actual BuildPlayer failure reason is logged before this wrapper throws.","Fix any compile errors or unresolved references reported in that log, then re-run HybridCLR/Generate/AotDlls.","Verify platform toolchains (JDK/NDK/SDK, Xcode) are installed and configured for the active build target.","Check that the build target and target group match a configuration that supports IL2CPP scripting backend."],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":"try\n{\n    StripAOTDllCommand.GenerateStripedAOTDlls(target);\n}\ncatch (Exception ex) when (ex.Message.Contains(\"GenerateStripedAOTDlls failed\"))\n{\n    // The real cause is in the Editor log above this point; surface it to CI.\n    Debug.LogError(\"AOT strip build failed. Check editor.log for the underlying BuildPlayer error.\");\n    throw;\n}","preventionTips":["Always inspect the full editor.log/console above this exception -- the real BuildPlayer error precedes it.","Ensure the project compiles cleanly in the Editor before running the strip step.","Verify IL2CPP scripting backend and platform toolchains are configured before stripping."],"tags":["hybridclr","build","aot","il2cpp","buildplayer"],"backgroundTag":null,"analyzedSha":"5cab01f7a8bee5f49f4781eebe9e2b1c6d7ebe0f","analyzedAt":"2026-08-13T21:10:40.377Z","schemaVersion":2},"datasetVersion":"2026-08-14T00:17:13.853Z"}