private static Map<String, List<String>> parseLaunchProperties(File launchPropertiesFile)
			throws FileNotFoundException, IOException, ParseException {
		HashMap<String, List<String>> map = new HashMap<>();
		if (launchPropertiesFile != null) {
			try (BufferedReader reader = new BufferedReader(new FileReader(launchPropertiesFile))) {
				int i = 0;
				String line;
				while ((line = reader.readLine()) != null) {
					i++;
					line = line.trim();
					if (line.isEmpty() || line.startsWith("#") || line.startsWith("//")) {
						continue;
					}
					int equalsIndex = line.indexOf('=');
					if (equalsIndex <= 0) {
						throw new ParseException(
							"Error parsing line " + i + " of " + launchPropertiesFile, i);
					}
					String key = line.substring(0, equalsIndex).trim();
					String value = line.substring(equalsIndex + 1, line.length()).trim();
					List<String> valueList = map.get(key);
					if (valueList == null) {
						valueList = new ArrayList<>();
						map.put(key, valueList);
					}
					if (!value.isEmpty()) {
						valueList.add(value);
					}
				}
			}
		}
		return map;
	}
Parses and gets the launch properties from the given launch properties file.

@param launchPropertiesFile The file to get the launch properties from.
@return The launch properties from the given launch properties file.
@throws FileNotFoundException if the given launch properties file does not exist.
@throws IOException if there was a problem reading the given launch properties file.
@throws ParseException if there was a problem parsing the given launch properties file.
GhidraBuild/LaunchSupport/src/main/java/ghidra/launch/LaunchProperties.java