規則
j2objc_library
查看規則來源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 個目標包含
將 Java 檔案轉入 Objective-C。
所有允許觸及的 J2ObjC 轉譯的運作方式會因來源 Java 來源類型而異
檔案。針對以下項目提供的所有 .java 來源檔案:
使用者可以在程式碼中匯入 J2ObjC 產生的標頭檔案。的匯入路徑
這些檔案是原始 Java 構件的根相關路徑。例如:
「
如果 proto_library 規則未在這項規則的遞移性停用,J2ObjC proto 也會
產生、編譯及連結於二進位檔層級適用於 proto
|
entry_classes
|
字串清單;預設值為 --j2objc_dead_code_removal
時,必須提供這項屬性。指定 Java 類別時,應依照
Java
語言規格。
指定 --j2objc_dead_code_removal 旗標時,會列出項目類別
將收集資料,並用做無效程式碼分析的進入點。
系統會將未使用的類別從最終的 ObjC 應用程式套件中移除。
|
jre_deps
|
標籤清單;預設為 j2objc_library 規則。系統只會連結核心 JRE 功能。
|
objc_import
查看規則來源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 Shell 的
objc_library
支援的屬性。
引數
屬性 | |
---|---|
name |
名稱;必選 此目標的專屬名稱。 |
deps
|
標籤清單;預設為 |
hdrs
|
標籤清單;預設為 這些標頭說明程式庫的公用介面, 由來源納入這項規則或適用 不過,編寫這類演算法並不容易 因為我們無法寫出所有可能的規則不應由這個程式庫的用戶端包含的標頭 應改為列在 srcs 屬性中。 如果已啟用模組,系統會將這些模組與來源分開編譯。 |
alwayslink
|
布林值;預設值為 srcs 和 non_arc_srcs (即使有些不含任何值)
二進位參照的符號。
如果程式碼中的程式碼未明確呼叫,這個方法就很實用
二進位檔案 (舉例來說,如果您的程式碼註冊以取得某些回呼)
這項工具可讓您存取
該基礎架構的各項服務
|
archives
|
標籤清單;必選 提供給目標 Objective-C 目標的.a 檔案清單
取決於這個目標
|
includes
|
字串清單;預設值為 #include/#import 個搜尋路徑清單
且全部取決於指定目標
這會支援第三方和開放原始碼程式庫
指定整個工作區路徑
#import/#include 陳述式。
系統會根據套件目錄解譯路徑,
genfiles 和 bin roots (例如 與最佳化不同,系統會在這項規則中新增這些標記 並提供相關的所有規則(注意:而不是仰賴的規則!)成為 因為這樣可能帶來相當深遠的影響有疑慮就加上 「-iquote」標記為 COPTS。 |
sdk_dylibs
|
字串清單;預設值為 |
sdk_frameworks
|
字串清單;預設值為 連結頂層 Apple 二進位檔時,該二進位檔中 連結及遞移依附元件圖表。 |
sdk_includes
|
字串清單;預設值為 #include/#import 個搜尋路徑清單
並列出所有目標 (每條路徑都與
$(SDKROOT)/usr/include 。
|
textual_hdrs
|
標籤清單;預設為 |
weak_sdk_frameworks
|
字串清單;預設值為 |
objc_library
查看規則來源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 (即使有些不含任何值)
二進位參照的符號。
如果程式碼中的程式碼未明確呼叫,這個方法就很實用
二進位檔案 (舉例來說,如果您的程式碼註冊以取得某些回呼)
這項工具可讓您存取
該基礎架構的各項服務
|
copts
|
字串清單;預設值為 請注意,針對產生的 Xcode 專案,請使用「-I」指定的目錄路徑旗標 動物被剖析,在前面加上「$(WORKSPACE_ROOT)/」如果 Pod 是相對路徑 新增至相關 Xcode 目標的標頭搜尋路徑。 |
defines
|
字串清單;預設值為 -D 標記。他們應該會
KEY=VALUE 或 KEY 形式,
不僅會傳遞給此目標的編譯器 (做為 copts )
) 以及此目標的所有 objc_ 依附元件。
取決於「化變數」替代和
Bourne 殼層權杖化。
|
enable_modules
|
布林值;預設值為 |
implementation_deps
|
標籤清單;預設為 deps ,標頭和包含這些程式庫的路徑 (及其全部路徑)
遞移依附元件) 只會用於這個程式庫的編譯作業,不適用於
依靠它使用 implementation_deps 指定的程式庫仍保持連結狀態
仰賴這個程式庫的二進位目標中
|
includes
|
字串清單;預設值為 #include/#import 個搜尋路徑清單
且全部取決於指定目標
這會支援第三方和開放原始碼程式庫
指定整個工作區路徑
#import/#include 陳述式。
系統會根據套件目錄解譯路徑,
genfiles 和 bin roots (例如 與最佳化不同,系統會在這項規則中新增這些標記 並提供相關的所有規則(注意:而不是仰賴的規則!)成為 因為這樣可能帶來相當深遠的影響有疑慮就加上 「-iquote」標記為 COPTS。 |
linkopts
|
字串清單;預設值為 |
module_map
|
標籤;預設為 |
module_name
|
String;預設值為 |
non_arc_srcs
|
標籤清單;預設為 |
pch
|
標籤;預設為 |
sdk_dylibs
|
字串清單;預設值為 |
sdk_frameworks
|
字串清單;預設值為 連結頂層 Apple 二進位檔時,該二進位檔中 連結及遞移依附元件圖表。 |
sdk_includes
|
字串清單;預設值為 #include/#import 個搜尋路徑清單
並列出所有目標 (每條路徑都與
$(SDKROOT)/usr/include 。
|
stamp
|
布林值;預設值為 |
textual_hdrs
|
標籤清單;預設為 |
weak_sdk_frameworks
|
字串清單;預設值為 |