Şartlar
- Apple Mac OS X sistemi
- Xcode'un en son sürümü
- JDK 21 yüklü olmalıdır.
- Apache Maven
- (Önerilir ancak zorunlu değildir) Google Protocol Buffer kaynağı
Mac'te kurulum
- Aşağıdaki komutu çalıştırarak Xcode komut satırı araçlarını yükleyin:
sudo xcode-select --install.bash_profilekoleksiyonunuza ekleyin:
export JAVA_HOME=`/usr/libexec/java_home -v 21`- Maven yüklü değilse (terminalde
mvn -versionkomutunu deneyin) Homebrew'u kullanın:
brew install mavenJ2ObjC projesinin çatalını oluşturma
J2ObjC projesini çatallamak için ana sayfasını açın ve Çatalla düğmesini tıklayın:

GitHub hesap adınızı seçin. Fork birkaç saniye içinde oluşturulur.
Ardından, geliştirme için çatalınızın bir kopyasını yerel sisteminize klonlayın. Önce [Clone or download button] (Klonla veya indir düğmesi) seçeneğini, ardından da Panoya Kopyala düğmesini tıklayın:

Ardından yerel bir dizine klonlayın:
git clone (Command-V) # Paste the copied URLprotobuf ve abseil'i yükleyin
J2ObjC'yi oluşturabilmek için önce protobuf C++'ı yüklemeniz gerekir.
protobuf ikili paketini yüklemek için Homebrew'u kullanın:
brew install protobufProtobuf C++ derlemesi artık Abseil kitaplığına bağlıdır. Bu nedenle, Abseil kitaplığını da yükleyin:
brew install abseilPROTOBUF_ROOT_DIR değerini, protobuf'un yüklendiği kök olarak ayarlamanız gerekir.
Normalde bu, Homebrew'un varsayılanıdır /usr/local. .bash_profile öğenize aşağıdakileri ekleyin:
export PROTOBUF_ROOT_DIR=/usr/local # or your custom Homebrew dirDoğrulamak için $PROTOBUF_ROOT_DIR/bin/protoc --version komutunu çalıştırın.
J2ObjC'yi oluşturma
Terminal penceresinde komut satırından derlemek için şunu çalıştırın:
# 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
J2ObjC'yi test etme
Terminal penceresinde komut satırından test etmek için şunu çalıştırın:
# Run translator and library unit testsmake test# Run all unit tests, including for protocol buffersmake test_all
Derlemeyi temizleme
# Remove all files generated by the buildmake clean
Paralel Derlemeler
J2ObjC derlemesi, -j<n> işaretiyle belirtilen paralel derlemeleri destekler. Burada n, eşzamanlı görevlerin maksimum sayısıdır. Maksimum değer, sisteminizin hızına bağlıdır. -j4 ile başlamanızı öneririz.
Sisteminiz kaldırabiliyorsa derleme sürelerini kısaltmak için sayıyı artırın, sistem hatalarıyla başarısız oluyorsa azaltın.
32 bit iOS mimarileri oluşturma
32 bit iOS mimarileri ("iphone" ve "simulator") varsayılan olarak oluşturulmaz. Önce J2OBJC_ARCHS ortam değişkeninde belirterek bunları kullanarak j2objc'yi oluşturabilirsiniz:
$ export J2OBJC_ARCHS="iphone simulator"
$ make -j8 all_dist
Desteklenen mimarilerin bir alt kümesini belirtmek, genellikle yalnızca uygulamanızın ihtiyaç duyduğu mimarileri belirterek yerel derlemeleri hızlandırmak için kullanılabilir.
Örneğin, yalnızca 64 bit iOS ("iphone64") ve ilişkili simülatörünü ("simulator64") oluşturmak için make komutunu çalıştırmadan önce J2OBJC_ARCHS="iphone64 simulator64" tanımlayın.
Tam Dağıtımı Oluşturma
j2objc ekibi, dosya boyutu sınırlamaları nedeniyle önceden oluşturulmuş dağıtımları artık GitHub'da yayınlamasa da "her şeyi tek adımda oluşturma" komut dosyası hâlâ kullanılabilir:
$ scripts/build_distribution.sh HEAD-<current-date> $PROTOBUF_ROOT_DIR
Bu komut dosyasının çalışması uzun sürer. Bunun nedeni, her j2objc paketi için her mimarinin oluşturulmasıdır. Ancak yalnızca minimum ortam değişkenleri grubuyla oluşturulduğu için genel derleme hataları varsa çok kullanışlıdır. build_distribution komut dosyası başarılı olursa ancak normal derleme adımları başarısız olursa, yerel ortam değişkenlerinden herhangi birinin yanlış ayarlanıp ayarlanmadığını kontrol edin.