StandardLocation — 파일 객체의 표준 위치 enum
StandardLocation — 파일 객체의 표준 위치 enum
파일 매니저가 파일을 어디에서 찾을지, 어디에 저장할지를 구분하려면 위치(location) 개념이 필요해요. StandardLocation은 그런 파일 객체의 표준 위치를 정의하는 enum이에요. 클래스 패스, 소스 패스, 출력 디렉토리 같은 표준 위치들을 상수로 제공해요.
JavaFileManager의 각 위치 인자로 사용돼요.
본문
StandardLocation은 enum으로, 주요 상수는 다음과 같아요.
public static final StandardLocation CLASS_OUTPUT
public static final StandardLocation SOURCE_OUTPUT
public static final StandardLocation CLASS_PATH
public static final StandardLocation SOURCE_PATH
public static final StandardLocation ANNOTATION_PROCESSOR_PATH
public static final StandardLocation ANNOTATION_PROCESSOR_MODULE_PATH
public static final StandardLocation PLATFORM_CLASS_PATH
public static final StandardLocation NATIVE_HEADER_OUTPUT
주요 상수를 정리하면 이래요.
CLASS_OUTPUT/SOURCE_OUTPUT— 컴파일 결과(클래스 파일)·생성 소스를 출력할 위치.CLASS_PATH/SOURCE_PATH— 클래스·소스를 찾을 경로.ANNOTATION_PROCESSOR_PATH/ANNOTATION_PROCESSOR_MODULE_PATH— 어노테이션 프로세서를 찾을 경로.PLATFORM_CLASS_PATH— 플랫폼(JDK) 클래스가 있는 경로.NATIVE_HEADER_OUTPUT— 네이티브 헤더(-h) 출력 위치.
각 상수는 Location 인터페이스를 구현하며, 파일 매니저의 getJavaFileForInput/getJavaFileForOutput/list 등의 메서드에 위치 인자로 전달돼요. 이 enum은 javax.tools 패키지에 속해요.