JavaInfo

Java 및 Java와 유사한 타겟에 대한 정보를 캡슐화하는 제공자입니다.

회원

JavaInfo

JavaInfo JavaInfo(output_jar, compile_jar, source_jar=None, compile_jdeps=None, generated_class_jar=None, generated_source_jar=None, native_headers_jar=None, manifest_proto=None, neverlink=False, deps=[], runtime_deps=[], exports=[], exported_plugins=[], jdeps=None, native_libraries=[])

JavaInfo 생성자

매개변수

매개변수 설명
output_jar 필수
컴파일의 결과로 만들어진 jar입니다 (예: javac, scalac 등).
compile_jar File; or None 필수
output_jar 대신 컴파일 시간 종속 항목으로 추가되는 jar 일반적으로 run_ijar에서 생성되는 ijar입니다. ijar를 사용할 수 없는 경우 대신 stamp_ijar의 출력을 사용하는 것이 좋습니다. 둘 다 사용하지 않으려면 output_jar를 전달하면 됩니다. 이 매개변수를 None로 설정할 수 있는 몇 가지 특수한 사례가 있습니다(예: 리소스가 포함된 jar을 추가하거나 java_binary와 같은 터미널 규칙에 사용되는 경우).
source_jar File; or None 기본값 = 없음
출력 jar을 만드는 데 사용된 소스 jar입니다. pack_sources를 사용하여 이 소스 jar를 생성합니다.
compile_jdeps File; or None 기본값 = 없음
JavaCompileAction에서 사용할 컴파일 시간 종속 항목에 대한 jdeps 정보입니다. Bazel에 포함된 deps.proto protobuf를 사용하여 인코딩된 바이너리 proto여야 합니다. 가능한 경우 이 파일은 일반적으로 헤더 컴파일러에 의해 생성됩니다.
generated_class_jar File; or None 기본값 = 없음
주석 처리 중에 생성된 소스에서 컴파일된 클래스 파일이 포함된 jar 파일입니다.
generated_source_jar File; or None 기본값 = 없음
주석 처리의 결과로 생성된 소스 jar입니다.
native_headers_jar File; or None 기본값 = 없음
네이티브 메서드 구현을 지원하는 CC 헤더 파일이 포함된 jar입니다 (일반적으로 javac -h의 출력).
manifest_proto File; or None 기본값 = 없음
규칙 출력의 매니페스트 정보 (제공되는 경우) Bazel에 포함된 manifest.proto protobuf를 사용하여 인코딩된 바이너리 proto여야 합니다. IDE 및 기타 도구에서 이 정보를 사용하여 더 효율적인 처리를 할 수 있습니다.
기본값 = False
true인 경우 런타임이 아닌 컴파일에만 이 라이브러리를 사용합니다.
deps sequence of JavaInfos 기본값 = []
출력 jar을 만드는 데 사용된 컴파일 시간 종속 항목
runtime_deps sequence of JavaInfos 기본값 = []
이 라이브러리에 필요한 런타임 종속 항목입니다.
exports sequence of JavaInfos 기본값 = []
이 라이브러리의 사용자에게 제공할 라이브러리입니다. java_library.exports도 참고하세요.
exported_plugins sequence of JavaPluginInfos 기본값 = []
내보낸 플러그인 목록입니다. 선택사항입니다.
jdeps File; or None 기본값 = 없음
규칙 출력에 대한 jdeps 정보 (제공되는 경우) Bazel에 포함된 deps.proto protobuf를 사용하여 인코딩된 바이너리 proto여야 합니다. 가능한 경우 이 파일은 일반적으로 컴파일러에 의해 생성됩니다. IDE 및 기타 도구에서 이 정보를 사용하여 더 효율적인 처리를 할 수 있습니다.
native_libraries sequence of CcInfos 기본값 = []
이 라이브러리에 필요한 CC 네이티브 라이브러리 종속 항목입니다.

annotation_processing

java_annotation_processing JavaInfo.annotation_processing

이 Java/Java와 유사한 타겟에 적용된 주석 프로세서에 대한 정보를 반환합니다.

지원 중단됨: 대신 plugins를 사용하세요. 이 메서드는 타겟을 소비하여 적용할 주석 프로세서에 관한 정보를 반환합니다. None을(를) 반환할 수 있습니다.

api_generating_plugins

JavaPluginData JavaInfo.api_generating_plugins

이 타겟에서 정의하거나 내보낸 API 생성 플러그인에 대한 데이터를 반환합니다.

이러한 주석 프로세서는 메서드 서명이 포함된 헤더 jar를 생성하기 전에 Java 대상에 적용됩니다. API 플러그인이 없으면 소스에서 헤더 jar가 생성되어 주요 경로가 축소됩니다.

api_generating_pluginsplugins의 하위 집합입니다.

compilation_info

java_compilation_info JavaInfo.compilation_info

Java/Java와 유사한 타겟에 대한 컴파일 정보를 반환합니다. None을(를) 반환할 수 있습니다.

compile_jars

depset JavaInfo.compile_jars

컴파일 시간에 이 타겟에 필요한 Jar를 직접 반환합니다. 규칙 구현에서 인터페이스 jar을 만들도록 선택했는지 여부에 따라 인터페이스 jar (ijar 또는 hjar), 일반 jar 또는 둘 다일 수 있습니다.

full_compile_jars

depset JavaInfo.full_compile_jars

이 타겟에서 직접 요구하는 일반적인 전체 컴파일 시간 Jar를 반환합니다.

참고: JavaInfo.compile_jars는 인터페이스 Jar와 일반 Jar를 혼합하여 반환할 수 있습니다.

인터페이스 Jar가 규칙 집합(예: 일부 Scala 대상)에서 작동하지 않는 경우에만 이 메서드를 사용합니다.Java 전용 대상으로 작업하는 경우 JavaInfo.compile_jars를 통해 인터페이스 Jar를 사용하는 것이 좋습니다.

java_outputs

list JavaInfo.java_outputs

이 Java/Java와 유사한 타겟의 출력에 대한 정보를 반환합니다.

module_flags_info

JavaModuleFlagsProvider JavaInfo.module_flags_info

Java 모듈 플래그 구성을 반환합니다.

출력

java_output_jars JavaInfo.outputs

이 Java/Java와 유사한 타겟의 출력에 대한 정보를 반환합니다. 지원 중단됨: java_outputs를 사용하세요. None을(를) 반환할 수 있습니다.

플러그인

JavaPluginData JavaInfo.plugins

소비 타겟이 적용해야 하는 모든 플러그인에 관한 데이터를 반환합니다.

일반적으로 java_plugin 자체이거나 하나 이상의 플러그인을 내보내는 java_library입니다.

java_librarydepsplugins 속성에 표시되는 이 필드의 모든 플러그인을 사용하여 주석 처리를 실행합니다.

runtime_output_jars

sequence JavaInfo.runtime_output_jars

이 Java/Java와 유사한 타겟에서 생성된 런타임 Jar의 목록을 반환합니다.

source_jars

sequence JavaInfo.source_jars

타겟 자체의 모든 소스 파일 (주석으로 생성된 파일 포함)이 있는 Jar 목록을 반환합니다. 즉, 전이 종속 항목의 소스를 포함하지 않습니다.

to_json

string JavaInfo.to_json()

지원 중단되었습니다. 이 API는 지원 중단되었으며 곧 삭제됩니다. 여기에 의존하지 마세요. ---incompatible_struct_has_no_methods사용 중지됩니다. 이 플래그를 사용하여 코드가 곧 삭제되는 것과 호환되는지 확인합니다.
구조체 매개변수에서 JSON 문자열을 만듭니다. 이 메서드는 모든 구조체 요소가 문자열, 정수, 불리언, 기타 구조체, 이러한 유형의 목록 또는 이러한 유형의 문자열 키와 값이 있는 사전인 경우에만 작동합니다. 문자열의 따옴표와 줄바꿈은 이스케이프 처리됩니다. 예:
struct(key=123).to_json()
# {"key":123}

struct(key=True).to_json()
# {"key":true}

struct(key=[1, 2, 3]).to_json()
# {"key":[1,2,3]}

struct(key='text').to_json()
# {"key":"text"}

struct(key=struct(inner_key='text')).to_json()
# {"key":{"inner_key":"text"}}

struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_json()
# {"key":[{"inner_key":1},{"inner_key":2}]}

struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_json()
# {"key":{"inner_key":{"inner_inner_key":"text"}}}
.

지원 중단됨: 대신 구조체 이외의 값에 작동하고 구조체 필드 네임스페이스를 오염시키지 않는 json.encode(x) 또는 json.encode_indent(x)를 사용하세요.

to_proto

string JavaInfo.to_proto()

지원 중단되었습니다. 이 API는 지원 중단되었으며 곧 삭제됩니다. 여기에 의존하지 마세요. ---incompatible_struct_has_no_methods사용 중지됩니다. 이 플래그를 사용하여 코드가 곧 삭제되는 것과 호환되는지 확인합니다.
구조체 매개변수에서 텍스트 메시지를 만듭니다. 이 메서드는 모든 구조체 요소가 (재귀적으로) 문자열, 정수, 불리언, 기타 구조체나 사전 또는 이러한 유형의 목록인 경우에만 작동합니다. 문자열의 따옴표와 줄바꿈은 이스케이프 처리됩니다. 구조체 키는 정렬된 순서로 반복됩니다. 예:
struct(key=123).to_proto()
# key: 123

struct(key=True).to_proto()
# key: true

struct(key=[1, 2, 3]).to_proto()
# key: 1
# key: 2
# key: 3

struct(key='text').to_proto()
# key: "text"

struct(key=struct(inner_key='text')).to_proto()
# key {
#   inner_key: "text"
# }

struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_proto()
# key {
#   inner_key: 1
# }
# key {
#   inner_key: 2
# }

struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_proto()
# key {
#    inner_key {
#     inner_inner_key: "text"
#   }
# }

struct(foo={4: 3, 2: 1}).to_proto()
# foo: {
#   key: 4
#   value: 3
# }
# foo: {
#   key: 2
#   value: 1
# }

지원 중단됨: 대신 proto.encode_text(x)를 사용하세요.

transitive_compile_time_jars

depset JavaInfo.transitive_compile_time_jars

타겟을 빌드하는 데 필요한 Jar의 전이 집합을 반환합니다.

transitive_deps

depset JavaInfo.transitive_deps

지원 중단됨: 대신 JavaInfo.transitive_compile_time_jars를 사용하세요. 동일한 값을 반환합니다.

transitive_native_libraries

depset JavaInfo.transitive_native_libraries

타겟에 필요한 CC 네이티브 라이브러리의 전이 집합을 반환합니다.

transitive_runtime_deps

depset JavaInfo.transitive_runtime_deps

지원 중단되었습니다. 대신 JavaInfo.transitive_runtime_jars를 사용하세요. 동일한 값을 반환합니다.

transitive_runtime_jars

depset JavaInfo.transitive_runtime_jars

타겟의 런타임 클래스 경로에 필요한 Jar의 전이 집합을 반환합니다.

transitive_source_jars

depset JavaInfo.transitive_source_jars

현재 타겟 및 모든 임시 종속 항목의 소스 파일이 포함된 jar를 반환합니다.