Starlark의 Java 컴파일 지원을 위한 유틸리티입니다.
회원
BootClassPathInfo
Provider java_common.BootClassPathInfo
compile
struct java_common.compile(ctx, *, source_jars=[], source_files=[], output, output_source_jar=None, javac_opts=[], deps=[], runtime_deps=[], exports=[], plugins=[], exported_plugins=[], native_libraries=[], annotation_processor_additional_inputs=[], annotation_processor_additional_outputs=[], strict_deps='ERROR', java_toolchain, bootclasspath=None, sourcepath=[], resources=[], resource_jars=[], classpath_resources=[], neverlink=False, enable_annotation_processing=True, enable_compile_jar_action=True, add_exports=[], add_opens=[])
매개변수
매개변수 | 설명 |
---|---|
ctx
|
ctx;
required 규칙 컨텍스트입니다. |
source_jars
|
파일의 시퀀스입니다. 기본값은 [] 입니다.compiling source_jars 또는 source_files 중 하나 이상을 지정해야 합니다. |
source_files
|
파일의 시퀀스입니다. 기본값은 [] 입니다.컴파일할 Java 소스 파일 목록입니다. source_jars 또는 source_files 중 하나 이상을 지정해야 합니다. |
output
|
파일;
필수 |
output_source_jar
|
파일 또는 None (기본값: None )출력 소스 jar입니다. 설정하지 않으면 기본값은 `{output_jar}-src.jar` 입니다. |
javac_opts
|
문자열의 시퀀스입니다. 기본값은 [] 입니다.원하는 javac 옵션 목록입니다. |
deps
|
구조체의 시퀀스입니다. 기본값은 [] 입니다.종속 항목 목록입니다. |
runtime_deps
|
구조체의 시퀀스입니다. 기본값은 [] 입니다.런타임 종속 항목 목록입니다. |
exports
|
구조체의 시퀀스입니다. 기본값은 [] 입니다.내보내기 목록입니다. |
plugins
|
구조체의 시퀀스 또는 구조체의 시퀀스입니다. 기본값은 [] 입니다. 플러그인 목록입니다. |
exported_plugins
|
구조체의 시퀀스 또는 구조체의 시퀀스입니다. 기본값은 [] 입니다. 내보낸 플러그인의 목록입니다. |
native_libraries
|
CcInfo의 시퀀스입니다. 기본값은 이 라이브러리에 필요한 [] CC 네이티브 라이브러리 종속 항목입니다. |
annotation_processor_additional_inputs
|
파일 시퀀스입니다. 기본값은 [] 입니다.Annotation 처리를 위해 Java 소스 외에도 Java 컴파일 작업에서 사용할 입력 목록입니다. |
annotation_processor_additional_outputs
|
파일의 시퀀스입니다. 기본값은 [] 입니다.Java 컴파일 작업에서 주석 처리의 클래스 jar 외에도 출력할 출력 목록입니다. |
strict_deps
|
string;
기본값은 'ERROR' 입니다.엄격한 종속 항목을 처리하는 방법을 지정하는 문자열입니다. 가능한 값은 'OFF', 'ERROR', 'WARN', 'DEFAULT'입니다. 자세한 내용은 --strict_java_deps 를 참고하세요. |
java_toolchain
|
정보;
필수 이 컴파일에 사용되는 JavaToolchainInfo입니다. 필수사항입니다. |
bootclasspath
|
기본값은 None 입니다. 이 컴파일에 사용되는 BootClassPathInfo입니다. 이 값이 있으면 제공된 java_toolchain과 연결된 bootclasspath를 재정의합니다. |
sourcepath
|
파일 시퀀스입니다. 기본값은 [] 입니다. |
resources
|
파일 시퀀스입니다. 기본값은 [] 입니다. |
resource_jars
|
파일 시퀀스입니다. 기본값은 [] 입니다. |
classpath_resources
|
파일 시퀀스입니다. 기본값은 [] 입니다. |
neverlink
|
bool;
기본값은 False |
enable_annotation_processing
|
bool;
기본값은 True 이 컴파일에서 주석 처리를 사용 중지하여 플러그인 또는 의존 항목의 exported_plugins에 제공된 주석 프로세서가 무시되도록 합니다. |
enable_compile_jar_action
|
bool;
기본값은 True 헤더 컴파일 또는 ijar 생성을 사용 설정합니다. false로 설정하면 종속 항목의 컴파일 클래스 경로에서 전체 클래스 jar가 사용됩니다. 이는 종속 항목이 없는 바이너리와 같이 라이브러리가 아닌 타겟에서 사용하기 위한 것입니다. |
add_exports
|
문자열의 시퀀스입니다. 기본값은 [] 입니다.이 라이브러리가 지정된 |
add_opens
|
문자열의 시퀀스입니다. 기본값은 [] 입니다.이 라이브러리가 지정된 |
JavaRuntimeInfo
Provider java_common.JavaRuntimeInfo
JavaToolchainInfo
Provider java_common.JavaToolchainInfo
병합하다
struct java_common.merge(providers)
매개변수
매개변수 | 설명 |
---|---|
providers
|
구조체의 시퀀스입니다.
필수 병합할 제공업체 목록입니다. |
pack_sources
File java_common.pack_sources(actions, *, output_source_jar=None, sources=[], source_jars=[], java_toolchain)
JavaInfo#source_jar
매개변수
매개변수 | 설명 |
---|---|
actions
|
작업;
required ctx.actions |
output_source_jar
|
파일 또는 None (기본값: None )출력 소스 jar입니다. |
sources
|
파일 시퀀스입니다. 기본값은 [] 입니다.소스 jar에 패킹할 Java 소스 파일 목록입니다. |
source_jars
|
파일의 시퀀스입니다. 기본값은 [] 입니다.소스 jar에 패킹할 소스 jar 목록입니다. |
java_toolchain
|
정보;
필수 ijar 도구를 찾는 데 사용되는 JavaToolchainInfo입니다. |
run_ijar
File java_common.run_ijar(actions, *, jar, target_label=None, java_toolchain)
JavaInfo#compile_jar
에 전달됩니다.
매개변수
매개변수 | 설명 |
---|---|
actions
|
작업;
required ctx.actions |
jar
|
파일;
필수 ijar를 실행할 jar입니다. |
target_label
|
라벨 또는 None ; 기본값은 None 입니다.jar에 스탬프를 찍을 대상 라벨입니다. add_dep 지원에 사용됩니다. 일반적으로 ctx.label 를 전달하여 현재 규칙의 라벨로 jar를 스탬프합니다.
|
java_toolchain
|
정보;
필수 ijar 도구를 찾는 데 사용되는 JavaToolchainInfo입니다. |
stamp_jar
File java_common.stamp_jar(actions, *, jar, target_label, java_toolchain)
add_dep
지원을 위한 타겟 라벨로 jar를 스탬프합니다. 반환 값은 일반적으로 JavaInfo#compile_jar
에 전달됩니다. 가능하면 run_ijar
를 사용하는 것이 좋습니다.
매개변수
매개변수 | 설명 |
---|---|
actions
|
작업;
required ctx.actions |
jar
|
파일;
필수 stamp_jar를 실행할 jar입니다. |
target_label
|
라벨:
필수 jar에 스탬프를 찍을 타겟 라벨입니다. add_dep 지원에 사용됩니다. 일반적으로 ctx.label 를 전달하여 현재 규칙의 라벨로 jar를 스탬프합니다.
|
java_toolchain
|
정보;
필수 stamp_jar 도구를 찾는 데 사용되는 JavaToolchainInfo입니다. |