I'm defining an environment variable in a Linux shell with TestEnviron=varproperty. Now, I want to write a small program that reads the environment variable, writes it to the console output, and writes the variable to a properties file. However when I try it with this code getenv() returns null:
package javaenvironmentvariable;
import java.io.File;
import java.io.FileOutputStream;
import java.util.Properties;
public class JavaEnvironmentVariable {
    public static void main(String[] args) {
        try {
            String variable = System.getenv("TestEnviron");
            System.out.println("TestEnviron: " + variable);
            variable = "TestEnviron=" + variable;
            Properties properties = new Properties();
            File file = new File("Variables.properties");
            FileOutputStream fileout = new FileOutputStream(file);
            properties.store(fileout, variable);
            fileout.close();
        } catch (Exception e) {
        }
    }
}
I use this in the shell to call the jar: sudo java -jar JavaEnvironmentVariable.jar
 
     
     
     
     
    