Şu anda desteklenen tek eklenti türü ek açıklama işlemcileridir.
Üyeler
JavaPluginInfo
JavaPluginInfo JavaPluginInfo(runtime_deps, *, processor_class, data=[], generates_api=False)
JavaPluginInfo
oluşturucu.
Parametreler
Parametre | Açıklama |
---|---|
runtime_deps
|
sequence of JavaInfos ;
gerekliEk açıklama işlemcisi içeren kitaplık. |
processor_class
|
string; or None ;
gerekliJava derleyicisinin ek açıklama işlemcisine giriş noktası olarak kullandığı tam nitelikli sınıf adı. |
data
|
sequence of Files; or depset of Files ;
varsayılan = []Yürütme sırasında bu ek açıklama işlemcisi için gereken dosyalar. |
generates_api
|
varsayılan = Yanlış Bu ek açıklama işlemcisi, API kodu oluşturduğunda doğru değerine ayarlanır. Bu tür bir ek açıklama işlemcisi, başlık jar'ları (yöntem imzaları içerir) oluşturulmadan önce bir Java hedefine uygulanır. API eklentisi olmadığında, kaynaklardan başlık jar'ları oluşturulur. Bu da kritik yolu azaltır. UYARI: Bu parametre derleme performansını etkiler. Yalnızca gerektiğinde kullanın. |
api_generating_plugins
JavaPluginData JavaPluginInfo.api_generating_plugins
Bu ek açıklama işlemcileri, başlık jar'ları (yöntem imzaları içerir) oluşturulmadan önce bir Java hedefine uygulanır. API eklentisi olmadığında, kaynaklardan başlık jar'ları oluşturulur. Bu da kritik yolu azaltır.
api_generating_plugins
, plugins
alt kümesidir.
java_outputs
list JavaPluginInfo.java_outputs
plugins
JavaPluginData JavaPluginInfo.plugins
Bu, genellikle java_plugin
ya da bir veya daha fazla eklentiyi dışa aktaran bir java_library
olur.
java_library
, bu alandaki tüm eklentiler deps
ve plugins
özelliklerinde görünen ek açıklama işlemeyi çalıştırır.
to_json
string JavaPluginInfo.to_json()
---incompatible_struct_has_no_methods
ile devre dışı bırakıldı. Kodunuzun, kaldırılma olasılığı yüksek olan içerikle uyumlu olduğunu doğrulamak için bu işareti kullanın. struct parametresinden bir JSON dizesi oluşturur. Bu yöntem yalnızca tüm struct öğeleri (yinelemeli) dize, ints, boole, diğer struct, bu türlerin listesi veya bu türlerin dize anahtarları ve değerlerini içeren bir sözlük olduğunda çalışır. Dizelerdeki tırnak işaretleri ve yeni satırlar kod dışına alınır. Örnekler:
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"}}}
Kullanımdan kaldırıldı: Bunun yerine, struct'lar dışındaki değerler için çalışan ve struct alanı ad alanını kirletmeyen json.encode(x) veya json.encode_indent(x) yöntemini kullanın.
to_proto
string JavaPluginInfo.to_proto()
---incompatible_struct_has_no_methods
ile devre dışı bırakıldı. Kodunuzun, kaldırılma olasılığı yüksek olan içerikle uyumlu olduğunu doğrulamak için bu işareti kullanın. struct parametresinden bir kısa mesaj oluşturur. Bu yöntem yalnızca tüm struct öğeleri (yinelemeli) dize, int, boole, diğer struct veya dikt ya da bu türlerin listeleriyse çalışır. Dizelerdeki tırnak işaretleri ve yeni satırlar kod dışına alınır. Yapı anahtarları, sıralı olarak yinelenir. Örnekler:
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 # }
Desteği sonlandırıldı: Bunun yerine proto.encode_text(x) işlevini kullanın.