@Override
	public void run(TaskMonitor monitor) {

		if (SystemUtilities.isInDevelopmentMode()) {
			vscodeService.handleVSCodeError(
				"Launching Visual Studio Code is not supported in development mode.", false, null);
			return;
		}

		// Get required Visual Studio Code components.  If VSCode isn't found at the default
		// location present the user with the options window, and when they close that window, try 
		// again.
		File vscodeExecutableFile;
		try {
			vscodeExecutableFile = vscodeService.getVSCodeExecutableFile();
		}
		catch (IOException e1) {
			vscodeService.handleVSCodeError(e1.getMessage(), true, null);
			try {
				vscodeExecutableFile = vscodeService.getVSCodeExecutableFile();
			}
			catch (IOException e2) {
				vscodeService.handleVSCodeError(
					"Failed to launch Visual Studio Code.  The required Visual Studio Code components have not been configured.",
					false, null);
				return;
			}
		}

		// Setup the workspace
		File vscodeSettingsDir = new File(Application.getUserSettingsDirectory(), "vscode");
		File workspaceFile = new File(vscodeSettingsDir, "ghidra_scripts.code-workspace");
		try {
			vscodeService.addToVSCodeWorkspace(workspaceFile, file.getParentFile());
		}
		catch (IOException e) {
			vscodeService.handleVSCodeError("Failed to create Visual Studio Code workspace.", false,
				e);
			return;
		}

		// Launch Visual Studio Code
		monitor.setIndeterminate(true);
		monitor.setMessage("Launching Visual Studio Code...");
		try {
			List<String> args = new ArrayList<>();
			args.add(vscodeExecutableFile.getAbsolutePath());
			args.add("-a");
			args.add(workspaceFile.getAbsolutePath());
			args.add(file.getAbsolutePath());
			new ProcessBuilder(args).redirectErrorStream(true).start();
		}
		catch (Exception e) {
			vscodeService.handleVSCodeError(
				"Unexpected exception occurred while launching Visual Studio Code.", false, null);
			return;
		}
	}
Constructs a new Visual Studio Code launcher task

@param vscodeService The Visual Studio Code integration service
@param file The file to open in Visual Studio Code
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/vscode/VSCodeLauncherTask.java