{"record":{"id":"b93c02afc1ec6adc","repo":"Tencent/tinker","slug":"patch-lib-file-not-found-but-path-is-null","errorCode":null,"errorMessage":"patch lib file not found, but path is null!!!!","messagePattern":"patch lib file not found, but path is null!!!!","errorType":"exception","errorClass":"TinkerRuntimeException","httpStatus":null,"severity":"error","filePath":"tinker-android/tinker-android-lib-no-op/src/main/java/com/tencent/tinker/lib/tinker/TinkerLoadResult.java","lineNumber":260,"sourceCode":"                    ShareTinkerLog.e(TAG, \"patch lib file directory not found, warning why the path is null!!!!\");\n                    throw new TinkerRuntimeException(\"patch lib file directory not found, warning why the path is null!!!!\");\n\n                    // tinker.getLoadReporter().onLoadFileNotFound(null,\n                    //     ShareConstants.TYPE_LIBRARY, true);\n                }\n\n                break;\n            case ShareConstants.ERROR_LOAD_PATCH_VERSION_LIB_FILE_NOT_EXIST:\n                String libPath = ShareIntentUtil.getStringExtra(intentResult,\n                    ShareIntentUtil.INTENT_PATCH_MISSING_LIB_PATH);\n                if (libPath != null) {\n                    //we only pass one missing file and then we break\n                    ShareTinkerLog.e(TAG, \"patch lib file not found:%s\", libPath);\n                    tinker.getLoadReporter().onLoadFileNotFound(new File(libPath),\n                        ShareConstants.TYPE_LIBRARY, false);\n                } else {\n                    ShareTinkerLog.e(TAG, \"patch lib file not found, but path is null!!!!\");\n                    throw new TinkerRuntimeException(\"patch lib file not found, but path is null!!!!\");\n                    // tinker.getLoadReporter().onLoadFileNotFound(null,\n                    //     ShareConstants.TYPE_LIBRARY, false);\n                }\n                break;\n            case ShareConstants.ERROR_LOAD_PATCH_VERSION_DEX_CLASSLOADER_NULL:\n                ShareTinkerLog.e(TAG, \"patch dex load fail, classloader is null\");\n                break;\n            case ShareConstants.ERROR_LOAD_PATCH_VERSION_DEX_MD5_MISMATCH:\n                String mismatchPath = ShareIntentUtil.getStringExtra(intentResult,\n                    ShareIntentUtil.INTENT_PATCH_MISMATCH_DEX_PATH);\n                if (mismatchPath == null) {\n                    ShareTinkerLog.e(TAG, \"patch dex file md5 is mismatch, but path is null!!!!\");\n                    throw new TinkerRuntimeException(\"patch dex file md5 is mismatch, but path is null!!!!\");\n                } else {\n                    ShareTinkerLog.e(TAG, \"patch dex file md5 is mismatch: %s\", mismatchPath);\n                    tinker.getLoadReporter().onLoadFileMd5Mismatch(new File(mismatchPath),\n                        ShareConstants.TYPE_DEX);\n                }","sourceCodeStart":242,"sourceCodeEnd":278,"githubUrl":"https://github.com/Tencent/tinker/blob/1b7ea02c239840f563ea64fb5bd286eb98d4011e/tinker-android/tinker-android-lib-no-op/src/main/java/com/tencent/tinker/lib/tinker/TinkerLoadResult.java#L242-L278","documentation":"Error \"patch lib file not found, but path is null!!!!\" thrown in Tencent/tinker.","triggerScenarios":"Thrown at tinker-android/tinker-android-lib-no-op/src/main/java/com/tencent/tinker/lib/tinker/TinkerLoadResult.java:260 when the library encounters an invalid state.","commonSituations":"Thrown in TinkerLoadResult.parseTinkerResult on ERROR_LOAD_PATCH_VERSION_LIB_FILE_NOT_EXIST when the missing-lib path extra is null. Indicates patched native libraries were deleted or never extracted.","solutions":["Ensure the patch intent carries INTENT_PATCH_MISSING_LIB_PATH so the missing library can be identified.","Re-run the patch process; a .so declared in the patch info is absent from the lib directory."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"1b7ea02c239840f563ea64fb5bd286eb98d4011e","analyzedAt":"2026-08-14T15:16:52.110Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}