Tiện ích hỗ trợ biên dịch Java trong Starlark.
Hội viên
- BootClassPathInfo
- compile
- JavaRuntimeInfo
- JavaToolchainInfo
- hợp nhất
- pack_sources
- run_ijar
- stamp_jar
BootClassPathInfo
Provider java_common.BootClassPathInfo
biên dịch
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, host_javabase=None, sourcepath=[], resources=[], resource_jars=[], classpath_resources=[], neverlink=False, enable_annotation_processing=True, enable_compile_jar_action=True, add_exports=[], add_opens=[])
Thông số
Thông số | Mô tả |
---|---|
ctx
|
bắt buộc Ngữ cảnh quy tắc. |
source_jars
|
sequence của Files;
mặc định là [] Danh sách các jar sẽ được biên dịch. Bạn phải chỉ định ít nhất một trong hai thuộc tính source_jars hoặc source_files. |
source_files
|
sequence của Files; mặc định là [] Một danh sách các tệp nguồn Java sẽ được biên dịch. Bạn phải chỉ định ít nhất một trong hai thuộc tính source_jars hoặc source_files. |
output
|
bắt buộc |
output_source_jar
|
File; hoặc None ;
mặc định là None Tệp jar nguồn đầu ra. Không bắt buộc. Mặc định là `{output_jar}-src.jar` nếu bạn không đặt. |
javac_opts
|
sequence của string; mặc định là [] Một danh sách các lựa chọn javac mong muốn. Không bắt buộc. |
deps
|
sequence của structs;
mặc định là [] Danh sách các phần phụ thuộc. Không bắt buộc. |
runtime_deps
|
sequence của structs;
mặc định là [] Danh sách các phần phụ thuộc trong thời gian chạy. Không bắt buộc. |
exports
|
sequence của structs;
mặc định là [] Danh sách các tệp xuất. Không bắt buộc. |
plugins
|
sequence của structs; hoặc sequence của structs;
mặc định là [] Danh sách các trình bổ trợ. Không bắt buộc. |
exported_plugins
|
sequence của struct; hoặc sequence của struct;
mặc định là [] Danh sách các trình bổ trợ đã xuất. Không bắt buộc. |
native_libraries
|
sequence của CcInfos; mặc định là [] Các phần phụ thuộc thư viện gốc CC cần thiết cho thư viện này. |
annotation_processor_additional_inputs
|
sequence của Files; mặc định là [] Một danh sách các đầu vào mà thao tác biên dịch Java sẽ nhận ngoài các nguồn Java để xử lý chú giải. |
annotation_processor_additional_outputs
|
sequence của Files; mặc định là [] Một danh sách các đầu ra mà thao tác biên dịch Java sẽ xuất ra ngoài tệp jar lớp từ quá trình xử lý chú giải. |
strict_deps
|
mặc định là 'ERROR' Một chuỗi chỉ định cách xử lý các deps nghiêm ngặt. Các giá trị có thể sử dụng: "OFF", "ERROR", "WARN" và "DEFAULT". Để biết thêm thông tin chi tiết, hãy xem /docs/user-manual#flag--strict_java_deps. Theo mặc định là "ERROR". |
java_toolchain
|
bắt buộc JavaToolchainInfo sẽ được dùng cho quá trình biên dịch này. Bắt buộc. |
bootclasspath
|
mặc định là None BootClassPathInfo sẽ được dùng cho quá trình biên dịch này. Nếu có, hãy ghi đè bootclasspath được liên kết với java_toolchain đã cung cấp. Không bắt buộc. |
host_javabase
|
mặc định là None Không dùng nữa. Tham số này không được dùng nữa và sẽ sớm bị xoá. Vui lòng không phụ thuộc vào thông tin này. Tính năng này đã tắt bằng --+incompatible_java_common_parameters . Hãy dùng cờ này để xác minh rằng mã của bạn tương thích với việc xoá sắp tới. Không dùng nữa: Bạn có thể bỏ tham số này (host_javabase được cung cấp cùng với java_toolchain) |
sourcepath
|
sequence của Files; mặc định là [] |
resources
|
sequence của Files; mặc định là [] |
resource_jars
|
sequence của Files; mặc định là [] |
classpath_resources
|
sequence của Files; mặc định là [] |
neverlink
|
mặc định là False |
enable_annotation_processing
|
mặc định là True Tắt quá trình xử lý chú thích trong quá trình biên dịch này, khiến mọi trình xử lý chú thích được cung cấp trong các trình bổ trợ hoặc trong exported_plugins của deps đều bị bỏ qua. |
enable_compile_jar_action
|
mặc định là True Cho phép biên dịch tiêu đề hoặc tạo ijar. Nếu bạn đặt chính sách này thành False, thì chính sách này sẽ buộc sử dụng tệp jar lớp đầy đủ trong đường dẫn lớp biên dịch của mọi đối tượng phụ thuộc. Việc này nhằm mục đích sử dụng cho các mục tiêu không phải là thư viện, chẳng hạn như các tệp nhị phân không có đối tượng phụ thuộc. |
add_exports
|
sequence của strings;
default is [] Cho phép thư viện này truy cập vào |
add_opens
|
sequence của strings; giá trị mặc định là [] Cho phép thư viện này truy cập một cách phản chiếu vào |
JavaRuntimeInfo
Provider java_common.JavaRuntimeInfo
JavaToolchainInfo
Provider java_common.JavaToolchainInfo
hợp nhất
struct java_common.merge(providers)
Thông số
Thông số | Mô tả |
---|---|
providers
|
sequence của structs;
required Danh sách các nhà cung cấp cần hợp nhất. |
pack_sources
File java_common.pack_sources(actions, *, output_jar=None, output_source_jar=None, sources=[], source_jars=[], java_toolchain, host_javabase=None)
JavaInfo#source_jar
Thông số
Thông số | Mô tả |
---|---|
actions
|
required ctx.actions |
output_jar
|
Tệp; hoặc None ;
mặc định là None Không dùng nữa. Tham số này không được dùng nữa và sẽ sớm bị xoá. Vui lòng không phụ thuộc vào thông tin này. Tính năng này đã tắt bằng --+incompatible_java_common_parameters . Hãy dùng cờ này để xác minh rằng mã của bạn tương thích với việc xoá sắp tới. Không dùng nữa: Tệp jar đầu ra của quy tắc. Dùng để đặt tên cho tệp jar nguồn kết quả. Tham số này đặt tham số output_source_jar thành `{output_jar}-src.jar`.Thay vào đó, hãy sử dụng trực tiếp tham số output_source_jar. |
output_source_jar
|
File; hoặc None ;
mặc định là None Tệp jar nguồn đầu ra. |
sources
|
sequence của File; mặc định là [] Một danh sách các tệp nguồn Java sẽ được đóng gói vào jar nguồn. |
source_jars
|
sequence của Files; mặc định là [] Một danh sách các jar nguồn sẽ được đóng gói vào jar nguồn. |
java_toolchain
|
required JavaToolchainInfo được dùng để tìm công cụ ijar. |
host_javabase
|
mặc định là None Không dùng nữa. Tham số này không được dùng nữa và sẽ sớm bị xoá. Vui lòng không phụ thuộc vào thông tin này. Tính năng này đã tắt bằng --+incompatible_java_common_parameters . Hãy dùng cờ này để xác minh rằng mã của bạn tương thích với việc xoá sắp tới. Không dùng nữa: Bạn có thể bỏ tham số này (host_javabase được cung cấp cùng với java_toolchain) |
run_ijar
File java_common.run_ijar(actions, *, jar, target_label=None, java_toolchain)
JavaInfo#compile_jar
.
Thông số
Thông số | Mô tả |
---|---|
actions
|
required ctx.actions |
jar
|
required Tệp jar để chạy ijar. |
target_label
|
Nhãn; hoặc None ; giá trị mặc định là None Nhãn mục tiêu để đóng dấu vào tệp jar. Dùng để hỗ trợ add_dep . Thông thường, bạn sẽ truyền ctx.label để đóng dấu jar bằng nhãn của quy tắc hiện tại.
|
java_toolchain
|
required JavaToolchainInfo được dùng để tìm công cụ ijar. |
stamp_jar
File java_common.stamp_jar(actions, *, jar, target_label, java_toolchain)
add_dep
. Giá trị trả về thường được truyền đến JavaInfo#compile_jar
. Ưu tiên sử dụng run_ijar
khi có thể.
Thông số
Thông số | Mô tả |
---|---|
actions
|
required ctx.actions |
jar
|
required Tệp jar để chạy stamp_jar. |
target_label
|
bắt buộc Nhãn mục tiêu để đóng dấu vào tệp jar. Dùng để hỗ trợ add_dep . Thông thường, bạn sẽ truyền ctx.label để đóng dấu jar bằng nhãn của quy tắc hiện tại.
|
java_toolchain
|
required JavaToolchainInfo được dùng để tìm công cụ stamp_jar. |