{"record":{"id":"2c1857d88562af55","repo":"Tencent/matrix","slug":"apk-unzip-path-inputpath-is-not-exist-2c1857","errorCode":null,"errorMessage":"---APK-UNZIP-PATH '<inputPath>' is not exist!","messagePattern":"---APK-UNZIP-PATH '<inputPath>' is not exist!","errorType":"validation","errorClass":"TaskInitException","httpStatus":null,"severity":"error","filePath":"matrix/matrix-android/matrix-apk-canary/src/main/java/com/tencent/matrix/apk/model/task/ResProguardCheckTask.java","lineNumber":62,"sourceCode":"    private File inputFile;\n    private Pattern fileNamePattern;\n\n    public ResProguardCheckTask(JobConfig config, Map<String, String> params) {\n        super(config, params);\n        type = TASK_TYPE_CHECK_RESGUARD;\n    }\n\n    @Override\n    public void init() throws TaskInitException {\n        super.init();\n        String inputPath = config.getUnzipPath();\n        if (Util.isNullOrNil(inputPath)) {\n            throw new TaskInitException(TAG + \"---APK-UNZIP-PATH can not be null!\");\n        }\n        Log.i(TAG, \"inputPath:%s\", inputPath);\n        inputFile = new File(inputPath);\n        if (!inputFile.exists()) {\n            throw new TaskInitException(TAG + \"---APK-UNZIP-PATH '\" + inputPath + \"' is not exist!\");\n        } else if (!inputFile.isDirectory()) {\n            throw new TaskInitException(TAG + \"---APK-UNZIP-PATH '\" + inputPath + \"' is not directory!\");\n        }\n        fileNamePattern = Pattern.compile(\"[a-z_0-9]{1,3}\");\n    }\n\n\n\n    @Override\n    public TaskResult call() throws TaskExecuteException {\n        File resDir = new File(inputFile, ApkConstants.RESOURCE_DIR_PROGUARD_NAME);\n        try {\n            TaskResult taskResult = TaskResultFactory.factory(getType(), TASK_RESULT_TYPE_JSON, config);\n            if (taskResult == null) {\n                return null;\n            }\n            long startTime = System.currentTimeMillis();\n            if (resDir.exists() && resDir.isDirectory()) {","sourceCodeStart":44,"sourceCodeEnd":80,"githubUrl":"https://github.com/Tencent/matrix/blob/3b8293bd65d47eeea7caf1f32a3a5d4d5eab60e7/matrix/matrix-android/matrix-apk-canary/src/main/java/com/tencent/matrix/apk/model/task/ResProguardCheckTask.java#L44-L80","documentation":"Thrown from ResProguardCheckTask.init() when the configured unzip path exists as a string but the corresponding File does not exist on disk. The task needs the actual extracted APK tree; a stale or wrong path (e.g. pointing at a deleted temp directory) causes this TaskInitException before any scanning starts.","triggerScenarios":"Thrown at matrix/matrix-android/matrix-apk-canary/src/main/java/com/tencent/matrix/apk/model/task/ResProguardCheckTask.java:62 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check the configured unzip path for typos","Run the unpack step of the job first so the directory exists before this task's init()","Fix filesystem permissions if the path exists but is inaccessible"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"3b8293bd65d47eeea7caf1f32a3a5d4d5eab60e7","analyzedAt":"2026-09-08T08:01:39.722Z","contentChangedAt":"2026-09-08T08:01:39.722Z","schemaVersion":2},"datasetVersion":"2026-09-16T04:17:20.429Z"}