דרישות
- מערכת Apple Mac OS X
- את הגרסה האחרונה של Xcode
- JDK JDK 11 הותקן
- Apache Maven
- (מומלץ אך לא נדרש) מקור של מאגר הנתונים הזמני של Google
הגדרת Mac
- כדי להתקין את כלי שורת הפקודה של Xcode, מריצים את:
sudo xcode-select --install
- הוסף ל
.bash_profile
שלך:
export JAVA_HOME=`/usr/libexec/java_home -v 11`
יוצרים Fork של פרויקט J2ObjC
כדי לפצל את פרויקט J2ObjC, פותחים את הדף הראשי ולוחצים על הלחצן Fork:
בוחרים את שם החשבון שלכם ב-GitHub. המזלג ייווצר תוך כמה שניות.
לאחר מכן, משכפלים עותק של המזלג במערכת המקומית לצורך פיתוח. תחילה לוחצים על [הלחצן 'שכפול או הורדה'], ולאחר מכן לוחצים על הלחצן 'העתקה ללוח':
לאחר מכן, משכפלים לספרייה מקומית:
git clone (Command-V) # Paste the copied URL
התקנת protobuf
כדי לבנות את J2ObjC, צריך להתקין את protobuf C++.
כדי להתקין את החבילה הבינארית של protobuf, משתמשים ב-Homebrew:
brew install protobuf
עליך להגדיר את PROTOBUF_ROOT_DIR
לבסיס שבו מותקן protobuf.
בדרך כלל, זו ברירת המחדל של Homebrew /usr/local
. צריך להוסיף את הפרטים הבאים אל .bash_profile
:
export PROTOBUF_ROOT_DIR=/usr/local # or your custom Homebrew dir
כדי לבצע אימות, מריצים את $PROTOBUF_ROOT_DIR/bin/protoc --version
.
בניין J2ObjC
כדי לפתח משורת פקודה בחלון Terminal, מריצים את:
# 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
הגדרה אופציונלית עבור מאגרי אחסון לפרוטוקולים
כדי שהידור של J2ObjC Protocol Buffers ומשך הריצה ל- Protocol Buffers (בגרסה 3.21.3 לפחות), צריך להתקין אותם.
- מורידים את קוד המקור מהמהדורה Protocol Buffers 3.21.7 (מאגרי אחסון לפרוטוקולים).
- פועלים לפי הוראות ההתקנה של C++ מ-README. שימו לב לאפשרות
--prefix
כדי לציין את מיקום ההתקנה. - מגדירים את משתנה הסביבה
PROTOBUF_ROOT_DIR
כדי להצביע על מיקום ההתקנה של מאגרי הפרוטוקולים.
פרסום תכונות שפה של Java 8.
להצגת ההודעה, בנוסף לשלבים הקודמים, צריך ליצור מודול JRE באמצעות JDK 11:
JAVA_HOME=`/usr/libexec/java_home -v 11` \
make -C jre_emul/ -f java.mk emul_module_dist
בדיקת J2ObjC
כדי לבצע בדיקה משורת פקודה בחלון Terminal, מריצים את:
# Run translator and library unit tests
make test
# Run all unit tests, including for protocol buffers
make test_all
ניקוי/איפוס מבנה
# Remove all files generated by the build
make clean
גרסאות build במקביל
ה-build של J2ObjC תומך בגרסאות build מקבילות, שמצוינות באמצעות הדגל -j<n>
, כאשר n מייצג את המספר המקסימלי של משימות בו-זמניות. הערך המקסימלי תלוי במהירות או בעוצמה של המערכת שלכם. אנחנו מציעים להתחיל ב--j4
. כדאי להגדיל את המספר כדי לקצר את זמני ה-build אם המערכת שלכם יכולה לטפל בו, ולהקטין אותו אם הוא נכשל עקב שגיאות מערכת.
ארכיטקטורות למעבדי בניינים
החל מגרסה 2.3 של j2objc, ארכיטקטורות iOS של 32 סיביות ("iPhone" ו "סימולטור") לא נכללות בהפצה הציבורית. אפשר ליצור j2objc עם הפרמטרים האלה על ידי ציון משתנה הסביבה J2OBJC_ARCHS:
$ export J2OBJC_ARCHS="iphone simulator macosx iphone64 watchv7k watch64 watchsimulator simulator64"
$ make -j8 all_dist
אפשר להשתמש באפשרות הזו גם כדי לזרז את ה-build באמצעות ציון של הארכיטקטורות הנדרשות בלבד לאפליקציה.
כדי לבנות רק את גרסת 64 ביט של iOS ("iPhone64") ואת הסימולטור המשויך אליה ("simulator64"), לדוגמה, צריך להגדיר את J2OBJC_ARCHS="iphone64 simulator64"
לפני שמריצים את הפקודה.