本文系flychen原創,轉載請注明出處。http://www.cnblogs.com/flychen/archive/2012/10/15/j2objc.html
前段時間谷歌發布了j2objc工具(java代碼轉換成objective-c工具),公司讓我做個調研報告,上個星期已經完成提交了。這個東西怎么樣,我在這里就不做評價了,相信大家會有自己的體會。我把工具的使用方法寫在這上面,因為網上只有關於j2objc的一篇新聞,至於怎么使用倒沒有介紹。我先做了個鋪墊,讓后續者少浪費點時間。
J2objc的使用
1 要求:
Xcode 4 or higher
Java for OS X (JDK1.6)
Apache Maven (可有可無,根據使用j2objc的方式)
2 使用方式及步驟
2.1 使用方式
在xcode中使用j2objc有兩種方式:第一種是在外部構建工程作為一個獨立的生成文件。第二種是為xcode工程類型添加規則。外部構建工程的的優點是仍然可以使用現有的java工具,如IDE支持錯誤的檢查的重構。建立規則的優點是java源作為xcode工程中的一部分,且java源很快可以在調試時使用。
2.2 使用步驟
以xcode工程添加規則的使用方式為例:
- 先下載安裝Xcode工具以及 javaforOSX。
- 下載解壓 j2objc 0.5.3。
- 在Xcode中配置規則:如下
(1) 在Xcode工程編輯器,選擇工程,點擊Build Rules選項卡。
(2) 在面板右下角單擊Add Build Rules按鈕。
(3) 在新規則的Process選項中,選擇"Java source files".
(4) 在自定義腳本文本框中,添加如下代碼:
$distribution-path/j2objc -d ${DERIVED_FILES_DIR} -sourcepath ${PROJECT_DIR}/$source-root \
--no-package-directories ${INPUT_FILE_PATH};
將$distribution-path改為下載解壓的j2objc 0.5.3的路徑。將$source-root改為工程名。
(5) 在Output Files 面板中單擊+按鈕,並添加"${DERIVED_FILES_DIR}/${INPUT_FILE_BASE}.h"
(6) 再次單擊+按鈕,並添加 "${DERIVED_FILES_DIR}/${INPUT_FILE_BASE}.m"
圖為1-6步
(7) 點擊Build Setting選項卡。
(8) 在Header Search Paths 中添加 "$distribution-path/include", 接着添加 "${DERIVED_FILES_DIR}".將$distribution-path改為下載解壓的j2objc 0.5.3的路徑。
(9) 在 Library Search Paths, 添加 "$distribution-path/lib".將$distribution-path改為下載解壓的j2objc 0.5.3的路徑。
(10) 在 Other Linker Flags, 添加 "-l jre_emul -ObjC" (J2ObjC's JRE emulation library).
(11) 在工程中添加java源文件。
大家如果有興趣的話也可以嘗試一下,其實個人認為這一類的翻譯軟件是很蛋疼的。