相当于这个命令行的东西:
set PATH=%PATH%;C:\Something\bin
要运行我的应用程序,有些事情必须在PATHvariables中。 所以我想在程序开始时捕捉exception,如果程序无法启动,并显示一些向导,供用户select需要在PATH中的程序的安装文件夹。 我会采取该文件夹的绝对path,并将其添加到PATHvariables,并再次启动我的应用程序。
编辑 :
这个“东西”是VLC播放器。 我需要它在PATHvariables中的安装文件夹(例如:C:\ Program Files \ VideoLAN \ VLC)。 我的应用程序是单个可执行.jar文件,为了使用它,VLC需要在PATH中。 所以当用户第一次启动我的应用程序时,那个小向导会popup来selectVLC文件夹,然后我会用它更新PATH。
你可以使用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"); } }