I have a bash script that at some point launches a java program. Inside the java program (for several reasons) I need to set an environment variable which should also be set in the parent bash process. How can I do this?
I've tried the following but it is not working:
String[] commands = new String[]{"command", "arg1", "arg2"};
ProcessBuilder processBuilder = new ProcessBuilder(commands);
processBuilder.environment().put("my_var", "my_value");
Process proc = processBuilder.start();
BufferedReader stdInput = new BufferedReader(new InputStreamReader(proc.getInputStream()));
BufferedReader stdError = new BufferedReader(new InputStreamReader(proc.getErrorStream()));
proc.waitFor();