Как установить/обновить переменную PATH из java-приложения в Windows?

Что-то эквивалентное этой командной строке:

set PATH=%PATH%;C:\Something\bin

Чтобы запустить мое приложение, некоторые вещи должны быть в переменной PATH. Поэтому я хочу, чтобы при запуске программы начинались исключения catch, если программа не запускалась и отображает какой-либо мастер для пользователя, чтобы выбрать папку для установки программы, которая должна находиться в PATH. Я бы взял полный путь к папке и добавил его в переменную PATH и снова запустил приложение.

ИЗМЕНИТЬ

Это "что-то" - это игрок VLC. Мне нужна папка установки в переменной PATH (например: C:\Program Files\VideoLAN\VLC). Мое приложение является одиночным исполняемым .jar файлом, и для его использования VLC должен быть в PATH. Поэтому, когда пользователь сначала запускает мое приложение, этот маленький мастер появится, чтобы выбрать папку VLC, а затем я обновил бы PATH.

Ответ 1

Вы можете выполнять команды с помощью объекта Process, вы также можете прочитать вывод этого с помощью BufferedReader, здесь быстрый пример, который может помочь вам:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {

    public static void main(String args[]) {
        try {
            Process proc = Runtime.getRuntime().exec("cmd set PATH=%PATH%;C:\\Something\\bin");
            proc.waitFor();
            BufferedReader reader = new BufferedReader(new InputStreamReader(proc.getInputStream()));

            String line = reader.readLine();
            while (line != null) {
                //Handle what you want it to do here
                line = reader.readLine();
            }
        } 
        catch (IOException e1) { 
            //Handle your exception here
        }
        catch(InterruptedException e2) {
            //Handle your exception here
        }

        System.out.println("Path has been changed");
    }
}