הגדרת סביבת פיתוח ב-Java

במדריך הזה מוסבר איך להכין את המחשב המקומי לפיתוח ב-Java, כולל פיתוח אפליקציות Java שפועלות ב-Google Cloud. כדי להתקין את Java ואת הכלים הרלוונטיים, פועלים לפי השלבים הבאים.

מטרות

  • מתקינים JDK (ערכת פיתוח Java).
  • מתקינים כלי לאוטומציה של בנייה.
  • מתקינים את ה-CLI של gcloud.
  • (אופציונלי) מתקינים IDE או עורך.
  • (אופציונלי) מתקינים פלאגין של IDE Google Cloud .
  • מתקינים את ספריות הלקוח של Cloud לשימוש ב-Java.
  • מגדירים אימות.

התקנה של JDK ‏ (Java Development Kit)

אתם יכולים לבחור כל הפצת Java שתרצו, בתנאי שמשתני הסביבה הבאים מוגדרים:

  • ‫JAVA_HOME: מצביע על הבסיס של התקנת ה-JDK.
  • PATH: כולל $JAVA_HOME/bin.

Eclipse Temurin היא הפצת OpenJDK (ערכת פיתוח Java) המומלצת לשימוש עםGoogle Cloud. ‫Temurin הוא קוד פתוח עם רישיון, הוא מאושר על ידי Java SE TCK ונבדק כדי לוודא שהוא מספק ביצועים ואבטחה באיכות של סביבת ייצור.

הוראות ההתקנה של Temurin משתנות בהתאם למערכת ההפעלה.

אם אתם משתמשים בתמונות אתחול של Compute Engine, אתם יכולים להשתמש בסקריפטים הבאים להתקנה.

‫CentOS/RHEL/Rocky

  1. קובעים את הגרסה הראשית של CentOS/RHEL/Rocky Linux:
    eval "$(grep VERSION_ID /etc/os-release)"
    eval "$(grep ^ID= /etc/os-release)"
    OLD_IFS=$IFS
    IFS='.'
    read -ra split_version <<< "$VERSION_ID"
    IFS=$OLD_IFS
    MAJOR_VERSION=$split_version
  2. יוצרים את קובץ מאגר המקור של Adoptium, ‏ ‎`/etc/yum.repos.d/adoptium.repo`‎:
    sudo tee /etc/yum.repos.d/adoptium.repo << EOM
    [Adoptium]
    name=Adoptium
    baseurl=https://packages.adoptium.net/artifactory/rpm/$ID/$MAJOR_VERSION/\$basearch
    enabled=1
    gpgcheck=1
    gpgkey=https://packages.adoptium.net/artifactory/api/gpg/key/public
    EOM
  3. מעדכנים את רשימות החבילות:
    sudo yum update -y
  4. מתקינים את Temurin:
    sudo yum install -y temurin-17-jdk
  5. אימות ההתקנה:
    java -version

‫Debian/Ubuntu

  1. מתקינים את מפתח ה-GPG של המאגר הציבורי. אם אתם משתמשים ב-Ubuntu 16.4, צריך להעביר את המפתח דרך gpg --dearmor לפני ששומרים אותו בקובץ. (לדוגמה: sudo wget ... | gpg --dearmor | sudo tee ...)
    sudo mkdir -p /etc/apt/keyrings
    sudo wget -O - https://packages.adoptium.net/artifactory/api/gpg/key/public |
      sudo tee /etc/apt/keyrings/adoptium.asc
  2. קובעים את השם של הפצת Linux ויוצרים את קובץ רשימת המקורות, /etc/apt/sources.list.d/adoptium.list:
    eval "$(grep VERSION_CODENAME /etc/os-release)"
    sudo tee /etc/apt/sources.list.d/adoptium.list << EOM
    deb [signed-by=/etc/apt/keyrings/adoptium.asc] https://packages.adoptium.net/artifactory/deb $VERSION_CODENAME main
    EOM
  3. מעדכנים את רשימות החבילות:
    sudo apt update -y
  4. מתקינים את Temurin:
    sudo apt install -y temurin-17-jdk
  5. אימות ההתקנה:
    java -version

SLES

  1. קובעים את הגרסה הראשית של SLES:
    eval "$(grep VERSION_ID /etc/os-release)"
    OLD_IFS=$IFS
    IFS='.'
    read -ra split_version <<< "$VERSION_ID"
    IFS=$OLD_IFS
    MAJOR_VERSION=$split_version
  2. מתקינים את מפתח ה-GPG של המאגר הציבורי:
    sudo mkdir -p /etc/zypp/keyrings
    sudo wget -O - https://packages.adoptium.net/artifactory/api/gpg/key/public |
      sudo tee /etc/zypp/keyrings/adoptium.asc
    sudo rpm --import /etc/zypp/keyrings/adoptium.asc
  3. קובעים את הגרסה של SLES ורושמים את מאגר Adoptium:
    sudo zypper ar -f "https://packages.adoptium.net/artifactory/rpm/sles/$MAJOR_VERSION/$(uname -m)" adoptium
  4. מעדכנים את רשימות החבילות:
    sudo zypper update -y
  5. מתקינים את Temurin:
    sudo zypper install -y temurin-17-jdk
  6. אימות ההתקנה:
    java -version

Windows

כדי להתקין את Temurin, מריצים את PowerShell בגרסה 3.0 ומעלה כאדמין באמצעות הפקודות הבאות.

  1. מורידים את Temurin. הפקודה Invoke-WebRequest שמופיעה בהוראות שלמטה דורשת PowerShell בגרסה 3.0 ומעלה.
    $JdkVersion = 17
    $JdkUrl = "https://api.adoptium.net/v3/binary/latest/$JdkVersion/ga/windows/x64/jdk/hotspot/normal/eclipse?project=jdk"
    $JdkExtractionPath = "C:\temurin-$JdkVersion-jdk"
    $JdkDownload = "$JdkExtractionPath.zip"
    [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]'Tls12'
    Invoke-WebRequest -Uri $JdkUrl -OutFile $JdkDownload
    Expand-Archive $JdkDownload -DestinationPath $JdkExtractionPath -Force
  2. מגדירים את המשתנים JAVA_HOME ו-Path:
    pushd $JdkExtractionPath
    $JdkPath = (Get-ChildItem).FullName
    popd
    [System.Environment]::SetEnvironmentVariable('JAVA_HOME', $JdkPath, 'Machine')
    
          
  3. (Optional) Refresh your session's `$env:Path` value. Otherwise, start a new session:
    $MachinePath = [System.Environment]::GetEnvironmentVariable('Path', 'Machine')
    $UserPath = [System.Environment]::GetEnvironmentVariable('Path', 'User')
    $env:Path = "$MachinePath;$UserPath"
  4. אימות ההתקנה:
    java -version

התקנת כלי לאוטומציה של בנייה

Apache Maven,‏ Gradle ו-SBT הן אפשרויות לניהול חבילות שיכולות לעזור ליצור תלויות באפליקציות Java במהירות ובעקביות בפלטפורמות שונות.

התקנת ה-CLI של gcloud

ה-CLI של gcloud הוא קבוצת כלים ל- Google Cloud. הוא מכיל את gcloud ואת bq, שבהם אפשר להשתמש כדי לגשת ל-Compute Engine, ל-Cloud Storage, ל-BigQuery ולמוצרים ושירותים אחרים משורת הפקודה. אפשר להפעיל את הכלים האלה באופן אינטראקטיבי או בסקריפטים אוטומטיים.

(אופציונלי) מתקינים IDE או עורך

דוגמאות לעורכים פופולריים (ללא סדר מסוים) שמשמשים לפיתוח אפליקציות Java:

העורכים האלה (לפעמים בעזרת תוספים) מספקים לכם את כל מה שאתם צריכים, החל מהדגשת תחביר, חיזוי והשלמת קוד ועד ליכולות ניפוי באגים משולבות לחלוטין.

(אופציונלי) התקנת פלאגין של IDE

כדי לגשת לפונקציות שימושיות בתוך כלי העריכה, כדאי לנסות את הפלאגינים הבאים:

התקנת ספריות לקוח של Cloud ל-Java

להשתמש בספריות הלקוח של Cloud ל-Java כדי לבצע אינטגרציה עם שירותים כמו Datastore ו-Cloud Storage. Google Cloudאפשר להתקין את החבילה עבור API ספציפי, כמו BigQuery, כמו שמוצג בדוגמה הבאה.

אם משתמשים ב-Maven, צריך להוסיף את הקוד הבא לקובץ pom.xml. במאמר העוסק בספריות BOM ל-Google Cloud Platform תוכלו לקרוא מידע נוסף על עצי מוצרים (BOM).

<!--  Using libraries-bom to manage versions.
See https://github.com/GoogleCloudPlatform/cloud-opensource-java/wiki/The-Google-Cloud-Platform-Libraries-BOM -->
<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>com.google.cloud</groupId>
      <artifactId>libraries-bom</artifactId>
      <version>26.62.0</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

<dependencies>
  <dependency>
    <groupId>com.google.cloud</groupId>
    <artifactId>google-cloud-bigquery</artifactId>
  </dependency>
</dependencies>

אם משתמשים ב-Gradle, צריך להוסיף את הקוד הבא ליחסי התלות: