본문 바로가기
Old Posts/Java

[Java] OS 환경변수 불러오기

by A6K 2021. 4. 23.

자바 프로그램을 실행시킬 때 Bash 스크립트를 통해 실행시키는 경우가 많다. 이 때, Bash에서 환경변수들을 설정해두고 자바 프로그램을 실행할 때 값들을 넘겨서 자바 로직에 사용하고 싶은 경우가 있다. 자바 프로그램에 인자형태로 넘겨주거나 파일 형태로 설정값들을 넘겨줘도 되지만 운영체제의 환경변수를 읽는 작업은 여전히 유효하다.

운영체제에서 환경변수는 환경변수 이름(Name)과 값(Value) 쌍으로 관리된다. 자바에서는 JVM이 실행되는 환경 변수 값을 System.getenv() 메소드를 통해 얻어온다.

System.out.println("Environment Variables : " + System.getenv());
System.out.println("JAVA_HOME : " + System.getenv("JAVA_HOME"));

이 코드를 실행하면 

이런 결과를 얻을 수 있다.

System.getenv() 메소드는 읽을 수 있는 환경변수 전체를 가져온다. 만약 특정 환경변수 값을 읽어오고 싶으면 System.getenv() 메소드에 인자로 환경 변수 이름을 주면 된다. 

댓글