async function registerClasspathListener()

in src/BootAppManager.ts [101:118]


        async function registerClasspathListener(): Promise<void> {
            const MAX_RETRIES = 10;
            const WAIT_IN_SECONDS = 2;
            let available_tries = MAX_RETRIES;
            while (available_tries > 0) {
                available_tries--;
                try {
                    await vscode.commands.executeCommand('java.execute.workspaceCommand', 'sts.java.addClasspathListener', callbackId);
                    return;
                } catch (error) {
                    if (available_tries > 0) {
                        await sleep(WAIT_IN_SECONDS * 1000);
                    } else {
                        throw new Error(`Failed to register classpath listener after ${MAX_RETRIES} retries.`);
                    }
                }
            }
        }