ルール
- <ph type="x-smartling-placeholder"></ph> j2objc_library
- <ph type="x-smartling-placeholder"></ph> objc_import
- <ph type="x-smartling-placeholder"></ph> objc_library
j2objc_library
<ph type="x-smartling-placeholder"></ph> ルールのソースを表示j2objc_library(name, deps, compatible_with, deprecation, distribs, entry_classes, exec_compatible_with, exec_properties, features, jre_deps, restricted_to, tags, target_compatible_with, testonly, toolchains, visibility)
このルールでは、J2ObjC を使用して Java ソースを変換します。 ファイルを Objective-C にエクスポートすると、objc_library や objc_binary の依存関係として使用できます。 できます。J2ObjC 自体について詳しくは、 J2ObjC サイト
カスタム J2ObjC トランスパイル フラグは、ビルドフラグを使用して指定できます。
--j2objc_translation_flags
をコマンドラインで使用します。
j2objc_library ターゲットに含まれる翻訳ファイルは、 デフォルトのコンパイル構成でコンパイルします。 属性にコンパイル オプションが指定されていない objc_library ルール。
さらに、生成されたコードはソースレベルではなくターゲット レベルで重複排除されます。もし 同じ Java ソースファイルを含む異なる Java ターゲットを使用すると、重複シンボル エラーが表示されることがあります。 表示されます。この問題を解決するための正しい方法は、共有 Java ソースファイルを 共通のターゲットが存在します。
引数
属性 | |
---|---|
name |
名前:必須 このターゲットの一意の名前。 |
deps
|
ラベルのリスト。デフォルトは j2objc_library 、java_library 、
次を含む java_import ターゲットと java_proto_library ターゲット
Objective-C にトランスパイルされる Java ファイル。
リーチできるすべての「 J2ObjC 変換の動作は、ソース Java ソースのタイプによって異なる
されます。含まれる .java ソースファイルごとに、
ユーザーは、J2ObjC で生成されたヘッダー ファイルをコードにインポートできます。インポート パスは、
これらのファイルは、元の Java アーティファクトのルート相対パスです。たとえば
proto_library ルールがこのルールの推移的クロージャに含まれている場合、J2ObjC proto も
バイナリレベルで生成、コンパイル、リンクできますproto の場合
|
entry_classes
|
文字列のリスト。デフォルトは --j2objc_dead_code_removal
がオンの場合、この属性は必須です。Java クラスは、
Java
言語仕様。
フラグ --j2objc_dead_code_removal が指定されている場合、エントリクラスのリスト
推移的に収集され、デッドコード分析を行うためのエントリポイントとして使用されます。
未使用のクラスは、最終的な ObjC App Bundle から削除されます。
|
jre_deps
|
ラベルのリスト。デフォルトは j2objc_library ルール。デフォルトでは、JRE のコア機能のみがリンクされています。
|
objc_import
<ph type="x-smartling-placeholder"></ph> ルールのソースを表示objc_import(name, deps, hdrs, alwayslink, archives, compatible_with, deprecation, distribs, exec_compatible_with, exec_properties, features, includes, restricted_to, sdk_dylibs, sdk_frameworks, sdk_includes, tags, target_compatible_with, testonly, textual_hdrs, toolchains, visibility, weak_sdk_frameworks)
このルールは、コンパイル済みの静的ライブラリを
.a
ファイル。また、同じ Cloud Storage バケットを使用して、
objc_library
でサポートされている属性。
引数
属性 | |
---|---|
name |
名前:必須 このターゲットの一意の名前。 |
deps
|
ラベルのリスト。デフォルトは |
hdrs
|
ラベルのリスト。デフォルトは これらのヘッダーは、ライブラリの公開インターフェースを記述したものです。 ルールに含まれているか、または独立している できます。このライブラリのクライアントに含めることを想定していないヘッダー srcs 属性で指定する必要があります。 モジュールが有効になっている場合、これらはソースとは別にコンパイルされます。 |
alwayslink
|
ブール値デフォルトは srcs と non_arc_srcs (含まれていないものも含む)
バイナリによって参照されるシンボル。
これは、Python のコードでコードを明示的に呼び出していない場合に
バイナリを受け取るコード(たとえば、コールバックを受け取るためにコードが登録されている場合)
提供します。
|
archives
|
ラベルのリスト。必須 Objective-C ターゲットに指定された.a ファイルのリスト
このターゲットに依存します。
|
includes
|
文字列のリスト。デフォルトは #include/#import 検索パスのリスト
そして、それに依存するすべての標的です。
これは、サポートしていないサードパーティおよびオープンソース ライブラリを
ワークスペース全体のパスを
#import/#include ステートメント。
パスはパッケージ ディレクトリからの相対パスとして解釈され、
genfiles と bin ルート(例: COPTS とは異なり、以下のフラグはこのルールに追加されます。 依存するすべてのルールについて学習しました。(注: コンテナが依存するルールではありません)。行動 広範囲に影響が及ぶ可能性があるため、細心の注意を払ってください。判断に迷う場合は、 「-iquo」COPTS に渡します。 |
sdk_dylibs
|
文字列のリスト。デフォルトは |
sdk_frameworks
|
文字列のリスト。デフォルトは 最上位の Apple バイナリをリンクすると、そのバイナリのリストにリストされているすべての SDK フレームワークが 推移的依存関係グラフがリンクされています |
sdk_includes
|
文字列のリスト。デフォルトは #include/#import 検索パスのリスト
すべての依存ターゲットに対して、各パスは
$(SDKROOT)/usr/include 。
|
textual_hdrs
|
ラベルのリスト。デフォルトは |
weak_sdk_frameworks
|
文字列のリスト。デフォルトは |
objc_library
<ph type="x-smartling-placeholder"></ph> ルールのソースを表示objc_library(name, deps, srcs, data, hdrs, alwayslink, compatible_with, copts, defines, deprecation, distribs, enable_modules, exec_compatible_with, exec_properties, features, implementation_deps, includes, linkopts, module_map, module_name, non_arc_srcs, pch, restricted_to, sdk_dylibs, sdk_frameworks, sdk_includes, stamp, tags, target_compatible_with, testonly, textual_hdrs, toolchains, visibility, weak_sdk_frameworks)
このルールは、指定された Objective-C ソースファイルから静的ライブラリを生成します。
引数
属性 | |
---|---|
name |
名前:必須 このターゲットの一意の名前。 |
deps
|
ラベルのリスト。デフォルトは |
srcs
|
ラベルのリスト。デフォルトは |
hdrs
|
ラベルのリスト。デフォルトは これらのヘッダーは、ライブラリの公開インターフェースを記述したものです。 ルールに含まれているか、または独立している できます。このライブラリのクライアントに含めることを想定していないヘッダー srcs 属性で指定する必要があります。 モジュールが有効になっている場合、これらはソースとは別にコンパイルされます。 |
alwayslink
|
ブール値デフォルトは srcs と non_arc_srcs (含まれていないものも含む)
バイナリによって参照されるシンボル。
これは、Python のコードでコードを明示的に呼び出していない場合に
バイナリを受け取るコード(たとえば、コールバックを受け取るためにコードが登録されている場合)
提供します。
|
copts
|
文字列のリスト。デフォルトは 生成された Xcode プロジェクトでは、ディレクトリ パスは「-I」を使用して指定します。使用すると、 copt が解析され、先頭に「$(WORKSPACE_ROOT)/」が付加されます相対パスの場合は 関連する Xcode ターゲットのヘッダー検索パスに追加されます。 |
defines
|
文字列のリスト。デフォルトは -D フラグ。地域
KEY=VALUE の形式または単に KEY です。
このターゲットのコンパイラだけでなく、copts として渡されます。
ありますが、このターゲットのすべての objc_ 依存関係も対象となります。
「変数を作成」による置換を適用し、
Bourne シェルのトークン化。
|
enable_modules
|
ブール値デフォルトは |
implementation_deps
|
ラベルのリスト。デフォルトは deps : これらのライブラリのヘッダーとインクルード パス(および
推移的依存関係)は、このライブラリのコンパイルにのみ使用され、
依存します。implementation_deps で指定されたライブラリは引き続きリンクされています
バイナリ ターゲットに格納されます。
|
includes
|
文字列のリスト。デフォルトは #include/#import 検索パスのリスト
そして、それに依存するすべての標的です。
これは、サポートしていないサードパーティおよびオープンソース ライブラリを
ワークスペース全体のパスを
#import/#include ステートメント。
パスはパッケージ ディレクトリからの相対パスとして解釈され、
genfiles と bin ルート(例: COPTS とは異なり、以下のフラグはこのルールに追加されます。 依存するすべてのルールについて学習しました。(注: コンテナが依存するルールではありません)。行動 広範囲に影響が及ぶ可能性があるため、細心の注意を払ってください。判断に迷う場合は、 「-iquo」COPTS に渡します。 |
linkopts
|
文字列のリスト。デフォルトは |
module_map
|
ラベル:デフォルトは |
module_name
|
String;デフォルトは |
non_arc_srcs
|
ラベルのリスト。デフォルトは |
pch
|
ラベル:デフォルトは |
sdk_dylibs
|
文字列のリスト。デフォルトは |
sdk_frameworks
|
文字列のリスト。デフォルトは 最上位の Apple バイナリをリンクすると、そのバイナリのリストにリストされているすべての SDK フレームワークが 推移的依存関係グラフがリンクされています |
sdk_includes
|
文字列のリスト。デフォルトは #include/#import 検索パスのリスト
すべての依存ターゲットに対して、各パスは
$(SDKROOT)/usr/include 。
|
stamp
|
ブール値デフォルトは |
textual_hdrs
|
ラベルのリスト。デフォルトは |
weak_sdk_frameworks
|
文字列のリスト。デフォルトは |