in src/extension.ts [180:202]
function registerConfigChangeListener(context: vscode.ExtensionContext): void {
const configChangeListener: vscode.Disposable = vscode.workspace.onDidChangeConfiguration(async (e: vscode.ConfigurationChangeEvent) => {
// close all terminals with outdated JAVA related environment variables
if (e.affectsConfiguration("maven.terminal.useJavaHome")
|| e.affectsConfiguration("maven.terminal.customEnv")
|| e.affectsConfiguration("java.home") && Settings.Terminal.useJavaHome()
) {
mavenTerminal.dispose();
}
if (e.affectsConfiguration("maven.view")
|| e.affectsConfiguration("maven.pomfile.globPattern")) {
mavenExplorerProvider.refresh();
}
if (e.affectsConfiguration("maven.executable.preferMavenWrapper")) {
context.workspaceState.update("trustMavenWrapper", undefined);
}
// refresh MAVEN_LOCAL_REPOSITORY when change to a new settingsFile
if (e.affectsConfiguration("maven.settingsFile")) {
await loadMavenSettingsFilePath();
}
});
context.subscriptions.push(configChangeListener);
}