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

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

מטרות

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

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

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

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

Eclipse Temurin היא הפצת OpenJDK (ערכת כלים לפיתוח Java) המומלצת לשימוש עםCloud de Confiance by S3NS. ‫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

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

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

התקנת ה-CLI של gcloud

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

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

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

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

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

להשתמש בספריות הלקוח של Cloud ל-Java כדי לבצע אינטגרציה עם שירותים כמו Datastore ו-Cloud Storage. Cloud de Confianceאפשר להתקין את החבילה עבור 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, צריך להוסיף את הקוד הבא ליחסי התלות:

implementation platform('com.google.cloud:libraries-bom:26.45.0')

implementation 'com.google.cloud:google-cloud-bigquery'

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

libraryDependencies += "com.google.cloud" % "google-cloud-bigquery" % "2.42.2"

אם משתמשים ב-Visual Studio Code או ב-IntelliJ, אפשר להוסיף את ספריות הלקוח לפרויקט באמצעות יישומי הפלאגין הבאים של IDE:

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

מגדירים אימות

כדי להריץ את ספריית הלקוח, קודם צריך להגדיר אימות.

יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:

gcloud auth application-default login

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

מידע נוסף זמין במאמר אימות לצורך שימוש בספריות לקוח.

שימוש בספריית הלקוח

// Imports the Google Cloud client library
import com.google.cloud.bigquery.BigQuery;
import com.google.cloud.bigquery.BigQueryOptions;
import com.google.cloud.bigquery.Dataset;
import com.google.cloud.bigquery.DatasetInfo;

public class QuickstartSample {
  public static void main(String... args) throws Exception {
    // Instantiate a client. If you don't specify credentials when constructing a client, the
    // client library will look for credentials in the environment, such as the
    // GOOGLE_APPLICATION_CREDENTIALS environment variable.
    BigQuery bigquery = BigQueryOptions.getDefaultInstance().getService();

    // The name for the new dataset
    String datasetName = "my_new_dataset";

    // Prepares a new dataset
    Dataset dataset = null;
    DatasetInfo datasetInfo = DatasetInfo.newBuilder(datasetName).build();

    // Creates the dataset
    dataset = bigquery.create(datasetInfo);

    System.out.printf("Dataset %s created.%n", dataset.getDatasetId().getDataset());
  }
}

הגדרת נקודות קצה לספריית הלקוח

אם אתם משתמשים בממשקי API שתומכים בנקודות קצה אזוריות, אתם יכולים להשתמש בנקודות קצה כדי להגדיר לאיזה שרת לשלוח בקשות. לדוגמה, באמצעות Google.Cloud.Dataproc.V1 API, אפשר להגדיר נקודת קצה של לקוח. מידע נוסף על נקודות קצה אזוריות ל-Dataproc בדוגמה הבאה, חשוב להחליף את MY-PROJECT בשם הפרויקט ואת us-central1 באזור שמתאים להגדרה שלכם:

ClusterControllerSettings settings =
     ClusterControllerSettings.newBuilder()
        .setEndpoint("us-central1-dataproc.googleapis.com:443")
        .build();
 try (ClusterControllerClient clusterControllerClient = ClusterControllerClient.create(settings)) {
   String projectId = "MY-PROJECT";
   String region = "us-central1";
   Cluster cluster = Cluster.newBuilder().build();
 }

המאמרים הבאים