Yêu cầu
- Hệ thống Apple Mac OS X
- Phiên bản mới nhất của Xcode
- Đã cài đặt JDK 21
- Apache Maven
- (Nên dùng nhưng không bắt buộc) Nguồn Google Protocol Buffer
Thiết lập Mac
- Cài đặt công cụ dòng lệnh Xcode bằng cách chạy:
sudo xcode-select --install- Thêm vào
.bash_profilecủa bạn:
export JAVA_HOME=`/usr/libexec/java_home -v 21`- Nếu bạn chưa cài đặt Maven (hãy thử
mvn -versiontrong một thiết bị đầu cuối), hãy sử dụng Homebrew:
brew install mavenTạo một bản rẽ nhánh của dự án J2ObjC
Để phân nhánh dự án J2ObjC, hãy mở trang chính của dự án rồi nhấp vào nút Phân nhánh:

Chọn tên tài khoản GitHub của bạn và nhánh rẽ sẽ được tạo sau vài giây.
Tiếp theo, hãy sao chép một bản sao của nhánh rẽ vào hệ thống cục bộ để phát triển. Trước tiên, hãy nhấp vào [nút Sao chép hoặc tải xuống], sau đó nhấp vào nút Sao chép vào khay nhớ tạm:

Sau đó, hãy sao chép vào một thư mục cục bộ:
git clone (Command-V) # Paste the copied URLCài đặt protobuf và abseil
Bạn cần cài đặt protobuf C++ trước khi có thể tạo J2ObjC.
Để cài đặt gói nhị phân protobuf, hãy dùng Homebrew:
brew install protobufBản dựng Protobuf C++ hiện phụ thuộc vào thư viện Abseil, vì vậy, hãy cài đặt thư viện đó:
brew install abseilBạn cần đặt PROTOBUF_ROOT_DIR thành thư mục gốc nơi protobuf được cài đặt.
Thông thường, đó là /usr/local mặc định của Homebrew. Thêm nội dung sau vào .bash_profile:
export PROTOBUF_ROOT_DIR=/usr/local # or your custom Homebrew dirĐể xác minh, hãy chạy $PROTOBUF_ROOT_DIR/bin/protoc --version.
Tạo J2ObjC
Để tạo từ dòng lệnh trong cửa sổ Terminal, hãy chạy:
# Build just the translator and librariesmake dist# Build the protocol buffer compiler and runtime for J2ObjCmake protobuf_dist# Build everything that is included in the project's distribution bundlesmake all_dist
Thử nghiệm J2ObjC
Để kiểm thử qua dòng lệnh trong cửa sổ Terminal, hãy chạy:
# Run translator and library unit testsmake test# Run all unit tests, including for protocol buffersmake test_all
Dọn dẹp bản dựng
# Remove all files generated by the buildmake clean
Bản dựng song song
Bản dựng J2ObjC hỗ trợ các bản dựng song song, được chỉ định bằng cờ -j<n>, trong đó n là số lượng tối đa các tác vụ đồng thời. Số lượng tối đa phụ thuộc vào tốc độ của hệ thống; bạn nên bắt đầu với -j4.
Tăng số lượng để rút ngắn thời gian xây dựng nếu hệ thống của bạn có thể xử lý, đồng thời giảm số lượng nếu quá trình tạo không thành công do lỗi hệ thống.
Tạo cấu trúc iOS 32 bit
Theo mặc định, các cấu trúc iOS 32 bit ("iphone" và "simulator") không được tạo. Bạn có thể tạo j2objc bằng cách trước tiên chỉ định các biến này trong biến môi trường J2OBJC_ARCHS:
$ export J2OBJC_ARCHS="iphone simulator"
$ make -j8 all_dist
Việc chỉ định một tập hợp con các cấu trúc được hỗ trợ thường có thể được dùng để tăng tốc các bản dựng cục bộ, bằng cách chỉ định các cấu trúc mà ứng dụng của bạn cần.
Ví dụ: để chỉ tạo iOS 64 bit ("iphone64") và trình mô phỏng được liên kết ("simulator64"), hãy xác định J2OBJC_ARCHS="iphone64 simulator64" trước khi chạy lệnh make.
Xây dựng hình thức phân phối đầy đủ
Mặc dù nhóm j2objc không còn đăng các bản phân phối được tạo sẵn lên GitHub nữa do giới hạn về kích thước tệp, nhưng bạn vẫn có thể sử dụng tập lệnh "build everything in one step" (tạo mọi thứ trong một bước):
$ scripts/build_distribution.sh HEAD-<current-date> $PROTOBUF_ROOT_DIR
Tập lệnh này mất nhiều thời gian để chạy vì mọi cấu trúc cho mọi gói j2objc đều được tạo. Tuy nhiên, điều này rất hữu ích nếu có lỗi chung khi tạo bản dựng, vì nó chỉ tạo bằng bộ biến môi trường tối thiểu. Nếu tập lệnh build_distribution thành công nhưng các bước tạo bản dựng thông thường không thành công, hãy kiểm tra xem có biến môi trường cục bộ nào được đặt không chính xác hay không.