Persyaratan
- Sistem Apple Mac OS X
- Versi terbaru Xcode
- JDK 21 diinstal
- Apache Maven
- (Direkomendasikan, tetapi tidak wajib) Sumber Google Protocol Buffer
Penyiapan Mac
- Instal alat command line Xcode dengan menjalankan:
sudo xcode-select --install- Tambahkan ke
.bash_profile:
export JAVA_HOME=`/usr/libexec/java_home -v 21`- Jika Maven belum diinstal (coba
mvn -versiondi terminal), gunakan Homebrew:
brew install mavenBuat Fork project J2ObjC
Untuk membuat fork project J2ObjC, buka halaman utamanya dan klik tombol Fork:

Pilih nama akun GitHub Anda, dan fork akan dibuat dalam beberapa detik.
Selanjutnya, clone salinan fork Anda ke sistem lokal untuk pengembangan. Pertama, klik tombol [Clone or download], lalu klik tombol Copy to Clipboard:

Kemudian, lakukan cloning ke direktori lokal:
git clone (Command-V) # Paste the copied URLMenginstal protobuf dan abseil
Anda harus menginstal protobuf C++ sebelum dapat mem-build J2ObjC.
Untuk menginstal paket biner protobuf, gunakan Homebrew:
brew install protobufBuild Protobuf C++ kini bergantung pada library Abseil, jadi instal juga:
brew install abseilAnda perlu menyetel PROTOBUF_ROOT_DIR ke root tempat protobuf diinstal.
Biasanya, itu adalah /usr/local default Homebrew. Tambahkan kode berikut ke
.bash_profile Anda:
export PROTOBUF_ROOT_DIR=/usr/local # or your custom Homebrew dirUntuk memverifikasi, jalankan $PROTOBUF_ROOT_DIR/bin/protoc --version.
Membangun J2ObjC
Untuk membuat dari command line di jendela Terminal, jalankan:
# 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
Menguji J2ObjC
Untuk menguji dari command line di jendela Terminal, jalankan:
# Run translator and library unit testsmake test# Run all unit tests, including for protocol buffersmake test_all
Membersihkan Build
# Remove all files generated by the buildmake clean
Build Paralel
Build J2ObjC mendukung build paralel, yang ditentukan menggunakan
flag -j<n>, dengan n adalah jumlah maksimum tugas serentak. Nilai maksimum
bergantung pada kecepatan sistem Anda; sebaiknya mulai dengan -j4.
Tingkatkan jumlahnya untuk mempersingkat waktu build jika sistem Anda dapat menanganinya, dan kurangi jika make gagal karena error sistem.
Membangun Arsitektur iOS 32-bit
Arsitektur iOS 32-bit ("iphone" dan "simulator") tidak dibuat secara default. Anda dapat membuat j2objc dengan cara ini dengan terlebih dahulu menentukannya dalam variabel lingkungan J2OBJC_ARCHS:
$ export J2OBJC_ARCHS="iphone simulator"
$ make -j8 all_dist
Menentukan subset arsitektur yang didukung umumnya dapat digunakan untuk mempercepat build lokal, dengan hanya menentukan arsitektur yang dibutuhkan aplikasi Anda.
Misalnya, untuk hanya membuat build iOS 64-bit ("iphone64") dan simulator terkaitnya ("simulator64"), tentukan J2OBJC_ARCHS="iphone64 simulator64" sebelum menjalankan make.
Membangun Distribusi Penuh
Meskipun tim j2objc tidak lagi memposting distribusi yang telah dibuat sebelumnya ke GitHub karena batasan ukuran filenya, skrip "build semuanya dalam satu langkah" masih dapat digunakan:
$ scripts/build_distribution.sh HEAD-<current-date> $PROTOBUF_ROOT_DIR
Skrip ini memerlukan waktu yang lama untuk dijalankan karena setiap arsitektur untuk setiap paket j2objc dibuat. Namun, hal ini sangat berguna jika terjadi kegagalan build umum, karena build hanya menggunakan kumpulan variabel lingkungan minimum. Jika skrip build_distribution berhasil, tetapi langkah-langkah build normal tidak, tinjau apakah ada variabel lingkungan lokal yang disetel dengan tidak benar.