Hội viên
- BootClassPathInfo
- compile
- JavaPluginInfo
- JavaRuntimeInfo
- JavaToolchainInfo
- make_non_strict
- hợp nhất
- pack_sources
- nhà cung cấp
- run_ijar
- stamp_jar
- to_java_binary_info
BootClassPathInfo
Provider java_common.BootClassPathInfoNhà cung cấp dùng để cung cấp thông tin đường dẫn lớp khởi động
compile
JavaInfo 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, host_javabase=None, sourcepath=[], resources=[], resource_jars=[], classpath_resources=[], neverlink=False, enable_annotation_processing=True, enable_compile_jar_action=True, add_exports=[], add_opens=[])Biên dịch các tệp/jar nguồn Java từ việc triển khai quy tắc Starlark và trả về một nhà cung cấp đại diện cho kết quả biên dịch và có thể thêm vào nhóm nhà cung cấp do quy tắc này tạo ra.
Các tham số
Thông số | Nội dung mô tả |
---|---|
ctx
|
bắt buộc Ngữ cảnh quy tắc. |
source_jars
|
sequence of Files ;
default = []Danh sách các tệp jar sẽ được biên dịch. Phải chỉ định ít nhất một trong số các source_jars hoặc source_file. |
source_files
|
sequence of Files ;
default = []Danh sách tệp nguồn Java cần biên dịch. Phải chỉ định ít nhất một trong số các source_jars hoặc source_file. |
output
|
bắt buộc |
output_source_jar
|
File; or None ;
mặc định = Không cóTệp nguồn đầu ra. Không bắt buộc. Giá trị mặc định là "{output_jar}-src.jar" nếu bạn không đặt chính sách này. |
javac_opts
|
sequence of strings ;
default = []Danh sách các tuỳ chọn javac mà bạn muốn. Không bắt buộc. |
deps
|
sequence of JavaInfos ;
mặc định = []Danh sách các phần phụ thuộc. Không bắt buộc. |
runtime_deps
|
sequence of JavaInfos ;
mặc định = []Danh sách các phần phụ thuộc thời gian chạy. Không bắt buộc. |
exports
|
sequence of JavaInfos ;
mặc định = []Danh sách tệp dữ liệu xuất. Không bắt buộc. |
plugins
|
sequence of JavaPluginInfos; or sequence of JavaInfos ;
default = []Danh sách trình bổ trợ. Không bắt buộc. |
exported_plugins
|
sequence of JavaPluginInfos; or sequence of JavaInfos ;
mặc định = []Danh sách các trình bổ trợ đã xuất. Không bắt buộc. |
native_libraries
|
sequence of CcInfos ;
mặc định = []CC phần phụ thuộc thư viện gốc cần thiết cho thư viện này. |
annotation_processor_additional_inputs
|
sequence of Files ;
default = []Danh sách dữ liệu đầu vào mà thao tác biên dịch Java sẽ thực hiện ngoài các nguồn Java để xử lý chú giải. |
annotation_processor_additional_outputs
|
sequence of Files ;
default = []Danh sách kết quả đầ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
|
default = 'ERROR' Một chuỗi chỉ định cách xử lý các phần phụ thuộc nghiêm ngặt. Giá trị có thể là: "OFF", "ERROR", "WARN" và "DEFAULT". Để biết thêm chi tiết, hãy xem /docs/user-manual#flag--strict_java_deps. Theo mặc định, lỗi "ERROR". |
java_toolchain
|
bắt buộc Cần sử dụng JavaToolchainInfo cho quá trình biên dịch này. Bắt buộc. |
host_javabase
|
mặc định = Không có 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 công cụ này. Tính năng này bị tắt bằng --+incompatible_java_common_parameters . Sử dụng cờ này để xác minh rằng mã của bạn tương thích với việc mã sắp bị xoá. Không dùng nữa: Bạn có thể bỏ tham số này (host_javabase được cung cấp bằng java_toolchain) |
sourcepath
|
sequence of Files ;
mặc định = [] |
resources
|
sequence of Files ;
mặc định = [] |
resource_jars
|
sequence of Files ;
mặc định = [] |
classpath_resources
|
sequence of Files ;
mặc định = [] |
neverlink
|
mặc định = Sai |
enable_annotation_processing
|
default = True Tắt tính năng xử lý chú giải trong phần biên dịch này, khiến mọi trình xử lý chú giải được cung cấp trong trình bổ trợ hoặc trong phần phụ thuộc export_plugins bị bỏ qua. |
enable_compile_jar_action
|
default = True Bật tính năng 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 đầy đủ lớp trong đường dẫn lớp biên dịch của bất kỳ phần phụ thuộc nào. Thao tá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ó phần phụ thuộc. |
add_exports
|
sequence of strings ;
mặc định = []Cho phép thư viện này truy cập vào |
add_opens
|
sequence of strings ;
default = []Cho phép thư viện này truy cập phản ánh |
JavaPluginInfo
Provider java_common.JavaPluginInfoKhoá dùng để truy xuất trình cung cấp có chứa thông tin về trình bổ trợ Java. Có thể truy cập cùng một giá trị như
JavaPluginInfo
. Ưu tiên sử dụng
JavaPluginInfo
trong mã mới.
JavaRuntimeInfo
Provider java_common.JavaRuntimeInfoKhoá dùng để truy xuất nhà cung cấp có chứa thông tin về thời gian chạy Java đang được sử dụng.
JavaToolchainInfo
Provider java_common.JavaToolchainInfoKhoá dùng để truy xuất trình cung cấp có chứa thông tin về chuỗi công cụ Java đang được sử dụng.
make_non_strict
JavaInfo java_common.make_non_strict(java_info)Trả về một trình cung cấp Java mới có phần các tệp jar trực tiếp là sự hợp nhất của cả các tệp jar trực tiếp và gián tiếp của trình cung cấp Java đã cho.
Các tham số
Thông số | Nội dung mô tả |
---|---|
java_info
|
bắt buộc Thông tin java. |
hợp nhất
JavaInfo java_common.merge(providers, *, merge_java_outputs=True, merge_source_jars=True)Hợp nhất các nhà cung cấp đã cung cấp thành một JavaInfo.
Các tham số
Thông số | Nội dung mô tả |
---|---|
providers
|
sequence of JavaInfos ;
bắt buộcDanh sách các nhà cung cấp cần hợp nhất. |
merge_java_outputs
|
mặc định = Đúng |
merge_source_jars
|
mặc định = Đúng |
pack_sources
File java_common.pack_sources(actions, *, output_jar=None, output_source_jar=None, sources=[], source_jars=[], java_toolchain, host_javabase=None)Đóng gói nguồn và tệp jar nguồn vào một tệp jar nguồn duy nhất. Giá trị trả về thường được chuyển đến
JavaInfo#source_jar
Các tham số
Thông số | Nội dung mô tả |
---|---|
actions
|
bắt buộc ctx.actions |
output_jar
|
File; or None ;
mặc định = KhôngKhô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 công cụ này. Tính năng này bị tắt bằng --+incompatible_java_common_parameters . Sử dụng cờ này để xác minh rằng mã của bạn tương thích với việc mã sắp bị xoá. Không dùng nữa: Tệp đầu ra của quy tắc. Dùng để đặt tên cho jar nguồn thu được. Tham số này đặt tham số output_source_jar thành `{output_jar}-src.jar`.Thay vào đó, hãy sử dụng tham số output_source_jar. |
output_source_jar
|
File; or None ;
mặc định = Không cóTệp nguồn đầu ra. |
sources
|
sequence of Files ;
default = []Danh sách tệp nguồn Java sẽ được đóng gói vào tệp nguồn. |
source_jars
|
sequence of Files ;
default = []Danh sách bình nguồn sẽ đóng gói vào bình nguồn. |
java_toolchain
|
bắt buộc JavaToolchainInfo dùng để tìm công cụ ijar. |
host_javabase
|
mặc định = Không có 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 công cụ này. Tính năng này bị tắt bằng --+incompatible_java_common_parameters . Sử dụng cờ này để xác minh rằng mã của bạn tương thích với việc mã sắp bị xoá. Không dùng nữa: Bạn có thể bỏ tham số này (host_javabase được cung cấp bằng java_toolchain) |
None
.
nhà cung cấp
Provider java_common.providerTrả về trình cung cấp đã khai báo cho Java.
Giá trị có thể truy cập tương tự như
JavaInfo
. Ưu tiên sử dụng
JavaInfo
trong mã mới.
run_ijar
File java_common.run_ijar(actions, *, jar, target_label=None, java_toolchain)Chạy ijar trên một bình, loại bỏ phần nội dung phương thức của nó. Điều này giúp giảm bớt việc tạo lại các tệp jar phụ thuộc trong bất kỳ quá trình biên dịch lại nào chỉ bao gồm một số thay đổi đơn giản đối với việc triển khai phương thức. Giá trị trả về thường được truyền đến
JavaInfo#compile_jar
.
Các tham số
Thông số | Nội dung mô tả |
---|---|
actions
|
bắt buộc ctx.actions |
jar
|
bắt buộc Tệp để chạy ijar. |
target_label
|
Label; or None ;
mặc định = Không cóNhãn mục tiêu để đóng dấu trong lọ. Dùng để hỗ trợ add_dep . Thông thường, bạn sẽ chuyển ctx.label để đóng dấu cho tệp jar bằng nhãn của quy tắc hiện tại.
|
java_toolchain
|
bắt buộc JavaToolchainInfo dùng để tìm công cụ ijar. |
stamp_jar
File java_common.stamp_jar(actions, *, jar, target_label, java_toolchain)Đóng dấu một lọ có nhãn mục tiêu để hỗ trợ
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ể.
Các tham số
Thông số | Nội dung mô tả |
---|---|
actions
|
bắt buộc ctx.actions |
jar
|
bắt buộc Tệp để chạy stamp_jar. |
target_label
|
bắt buộc Nhãn mục tiêu để đóng dấu cho lọ. Dùng để hỗ trợ add_dep . Thông thường, bạn sẽ chuyển ctx.label để đóng dấu cho tệp jar bằng nhãn của quy tắc hiện tại.
|
java_toolchain
|
bắt buộc JavaToolchainInfo dùng để tìm công cụ stamp_jar. |
to_java_binary_info
JavaInfo java_common.to_java_binary_info(java_info)Trả về bản sao của JavaInfo cho trước với thông tin tối thiểu được lệnh java_binary trả về
Các tham số
Thông số | Nội dung mô tả |
---|---|
java_info
|
bắt buộc JavaInfo để cải thiện. |