@SpringBootApplication
@PropertySource("classpath:config-${config.type}.properties")
public class ApprovalApplication {

    public static void main(String[] args) {
        SpringApplication.run(ApprovalApplication.class, args);
    }
}

위와 같이 config.type에 따라 필요한 프로퍼티를 불러 오는 경우 인텔리제이를 사용 하신다면

properties1

VM options에 해당 값을 넣으면 됩니다.

만약 엘라스틱빈스톡을 사용하신다면

properties2

JVM 명령줄 옵션에 값을 주면 됩니다.

이렇게 문명의 혜택을 받으며 편히 쓰다가 ec2에서 직접 java 명령어로 실행을 시킬 일이 있었는데…..당시 생각보다 금방 찾지를 못해서 고생을 했던 기억이 나네요.

java -Dconfig.type=prod

아주 간단하게도 위와 같이 주면 됩니다.

java -Dconfig.type=prod -Dproperties.type=prod

만약 두개의 값을 줘야 하면 위처럼 한칸 뛰어서 작성 하시면 되고, 마찬가지로 빈스톡, 인텔리제이 내에서도 한칸 뛰고 필요한 값만큼 넣어주면 됩니다~
(사실 -D 형태로 넣어주는 값은 JVM 옵션입니다)

출처 : 커피한잔의 여유와 코딩, 오라클