J2ObjC binası

Koşullar

  • Apple Mac OS X sistemi
  • En son Xcode sürümü
  • JDK JDK 11 yüklendi
  • Apache Maven
  • (Önerilir ancak zorunlu değildir) Google Protocol Buffer kaynağı

Mac Kurulumu

  • Aşağıdaki komutu çalıştırarak Xcode komut satırı araçlarını yükleyin:
sudo xcode-select --install
  • .bash_profile cihazınıza ekleyin:
export JAVA_HOME=`/usr/libexec/java_home -v 11`

J2ObjC projesinin Çatalını oluşturma

J2ObjC projesini çatallamak için ana sayfasını açın ve Çatal düğmesini tıklayın:

Çatal

GitHub hesap adınızı seçtiğinizde çatal birkaç saniye içinde oluşturulur.

Ardından, geliştirme için yerel sisteminize çatalınızın bir kopyasını klonlayın. Önce [Klonla veya indir düğmesi]'ni ve ardından Panoya Kopyala düğmesini tıklayın:

Klon

Ardından yerel bir dizine klonlayın:

git clone (Command-V)  # Paste the copied URL

Protobuf yükle

J2ObjC derlemek için protobuf C++ programını yüklemiş olmanız gerekir.

Protobuf ikili paketini yüklemek için Homebrew uygulamasını kullanın:

brew install protobuf

Protobuf'ın yüklü olduğu kökü PROTOBUF_ROOT_DIR olarak ayarlamanız gerekir. Normalde bu, Homebrew varsayılan değeridir /usr/local. .bash_profile kampanyanıza aşağıdakileri ekleyin:

export PROTOBUF_ROOT_DIR=/usr/local # or your custom Homebrew dir

Doğrulamak için $PROTOBUF_ROOT_DIR/bin/protoc --version komutunu çalıştırın.

J2ObjC oluşturma

Terminal penceresindeki bir komut satırından derleme yapmak için şu komutu çalıştırın:

# Build just the translator and libraries
make dist

# Build the full distribution (including frameworks)
make frameworks

# Build the protocol buffer compiler and runtime for J2ObjC
make protobuf_dist

# Build everything that is included in the project's distribution bundles
make all_dist

Protokol Arabellekleri için İsteğe Bağlı Kurulum

J2ObjC Protocol Buffers derleyicisi ve çalışma zamanı, Protocol Buffers'ın (en az 3.21.3) yüklenmesini gerektirir:

  • Protocol Buffers 3.21.7 sürümünden kaynak kodu indirin.
  • README sayfasındaki C++ yükleme talimatlarını uygulayın. Yükleme konumunuzu belirtirken --prefix seçeneğine dikkat edin.
  • PROTOBUF_ROOT_DIR ortam değişkenini Protokol Arabellekleri yükleme konumunuza işaret edecek şekilde tanımlayın.

Java 8 dili özelliklerini gönderin.

Duyuruyu inceleyin. Önceki bölümdeki adımlara ek olarak, bir JRE modülünün JDK 11 ile oluşturulması gerekir:

JAVA_HOME=`/usr/libexec/java_home -v 11` \
make -C jre_emul/ -f java.mk emul_module_dist

J2ObjC testi

Terminal penceresindeki bir komut satırından test yapmak için şu komutu çalıştırın:

# Run translator and library unit tests
make test

# Run all unit tests, including for protocol buffers
make test_all

Yapıyı Temizleme/Sıfırlama

# Remove all files generated by the build
make clean

Paralel Derlemeler

J2ObjC derlemesi, -j<n> işareti kullanılarak belirtilen paralel derlemeleri destekler. Burada n, maksimum eşzamanlı görev sayısıdır. Maksimum değer, sisteminizin ne kadar hızlı/güçlü olduğuna bağlıdır. -j4 ile başlamanızı öneririz. Sisteminiz bunu halledebiliyorsa derleme sürelerini kısaltmak için sayıyı artırın, sistem hatalarından kaynaklanan hatalar durumunda ise azaltın.

Yapı İşlemci Mimarileri

j2objc'nin 2.3 sürümü itibarıyla, 32 bit iOS mimarileri ("iphone" ve "simulator") herkese açık dağıtıma dahil değildir. İlk olarak J2OBJC_ARCHS ortam değişkenini belirterek j2objc öğesini bunlarla oluşturabilirsiniz:

$ export J2OBJC_ARCHS="iphone simulator macosx iphone64 watchv7k watch64 watchsimulator simulator64"
$ make -j8 all_dist

Bu, yalnızca uygulamanızın ihtiyacı olan mimarileri belirterek derlemeyi hızlandırmak için de kullanılabilir. Örneğin, yalnızca 64 bit iOS ("iphone64") ve onunla ilişkili simülatörü ("simulator64") derlemek için make komutunu çalıştırmadan önce J2OBJC_ARCHS="iphone64 simulator64" öğesini tanımlayın.