Halaman ini menjelaskan cara menyiapkan lingkungan pengembangan untuk membangun dan men-deploy backend API menggunakan Cloud Endpoints Frameworks untuk lingkungan standar App Engine. Halaman ini menggunakan contoh kode kerangka kerja Endpoints Frameworks versi 2.0 untuk menjelaskan software dan komponen dasar yang Anda butuhkan untuk memulai.
Anda mungkin ingin menggunakan
endpoints-skeleton-archetype
atau hello-endpoints-archetype
yang dijelaskan dalam
Menggunakan Apache Maven dan plugin App Engine (berbasis Google Cloud CLI)
untuk membuat project Endpoints Frameworks versi 2.0 baru.
Untuk lebih memahami langkah-langkah yang diperlukan untuk men-deploy API sampel menggunakan Framework Endpoint, lihat tutorial Memulai Framework Endpoint di App Engine.
Sebelum memulai
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Verify that billing is enabled for your Google Cloud project.
- Catat ID project Google Cloud karena akan diperlukan nanti.
- Jika Anda belum menginstal Java 8, download Java Development Kit (JDK) dari situs Oracle, lalu instal.
- Instal Maven atau Gradle:
Maven
- Download Apache Maven versi 3.3.9 atau yang lebih baru
- Instal dan konfigurasi Maven untuk lingkungan pengembangan lokal Anda.
Gradle
- Download dan inisialisasi Google Cloud CLI.
- Jalankan perintah berikut:
- Pastikan gcloud CLI diizinkan untuk mengakses data dan layanan Anda di Google Cloud:
gcloud auth login
- Menggunakan kredensial default aplikasi:
gcloud auth application-default login
- Instal komponen
app-engine-java
Google Cloud SDK:gcloud components install app-engine-java
- Update ke versi terbaru Google Cloud SDK dan semua komponen:
gcloud components update
- Pastikan gcloud CLI diizinkan untuk mengakses data dan layanan Anda di Google Cloud:
- Buat aplikasi App Engine:
-
Tetapkan project default ke Google Cloud project ID Anda:
gcloud config set project YOUR_PROJECT_ID
Ganti
YOUR_PROJECT_ID
dengan ID project Google Cloud Anda. Jika Anda memiliki project Google Cloud lain, dan Anda ingin menggunakangcloud
untuk mengelolanya, lihat Mengelola konfigurasi gcloud CLI. - Pilih region tempat Anda ingin membuat aplikasi App Engine. Lihat Lokasi App Engine untuk mengetahui daftar region.
- Buat aplikasi App Engine.
Ganti
YOUR_PROJECT_ID
dengan ID Google Cloud project Anda danYOUR_REGION
dengan region tempat Anda ingin membuat aplikasi App Engine.gcloud app create \ --project=YOUR_PROJECT_ID \ --region=YOUR_REGION
-
Tetapkan project default ke Google Cloud project ID Anda:
Clone repositori contoh ke komputer lokal Anda:
git clone https://github.com/GoogleCloudPlatform/java-docs-samples
Ubah ke direktori yang berisi contoh kerangka Endpoints Frameworks:
cd java-docs-samples/appengine-java8/endpoints-v2-skeleton/
Contoh memiliki struktur direktori berikut:
MyApi.java
berisi class kosong yang dapat Anda gunakan untuk mulai menulis API. Lihat contoh echo untuk contoh kode yang akan membantu Anda memulai.web.xml
adalah file standar yang digunakan untuk mengonfigurasi servlet.appengine-web.xml
menentukan informasi yang diperlukan untuk men-deploy API ke lingkungan standar App Engine menggunakan Java 8.pom.xml
berisi informasi project dan konfigurasi yang digunakan oleh Maven untuk membuat project dan men-deploy API ke App Engine.build.gradle
berisi informasi project dan konfigurasi yang digunakan oleh Gradle untuk membangun project dan men-deploy API ke App Engine.
- Dependensi
endpoints-framework
berisi class yang diperlukan untuk membuat API Anda. - Anda memerlukan App Engine Standard API
SDK (
appengine-api-sdk
) untuk men-deploy project ke lingkungan standar App Engine. - Paket
javax.servlet
standar diperlukan untuk membuat servlet. - Paket
javax.inject
standar diperlukan untuk mendukung injeksi dependensi. maven-war-plugin
memperluas pluginjava
untuk menambahkan dukungan untuk merakit aplikasi web.-
appengine-maven-plugin
diperlukan untuk menjalankan API di App Engine. -
endpoints-framework-maven-plugin
menyediakan tugas dan konfigurasi untuk membangun project Endpoints Frameworks. - Plugin Gradle Endpoints Frameworks digunakan untuk membuat dokumen OpenAPI dan membuat library klien.
- Anda memerlukan plugin Gradle App Engine untuk men-deploy project ke App Engine.
- Plugin
java
menambahkan langkah-langkah kompilasi dan build khusus Java ke project Anda. - Plugin
war
memperluas pluginjava
untuk menambahkan dukungan untuk merakit aplikasi web. - Plugin
endpoints-framework-server
menyediakan dukungan sisi server untuk plugin Gradle Endpoints Frameworks. - Plugin
appengine
diperlukan untuk menjalankan API di App Engine. - Dependensi
endpoints-framework
berisi class yang diperlukan untuk membuat API Anda. - App Engine Standard
API SDK (
appengine-api-sdk
) diperlukan untuk men-deploy project Anda ke lingkungan standar App Engine. - Paket
javax.servlet
standar diperlukan untuk membuat servlet . - Paket
javax.inject
standar diperlukan untuk mendukung injeksi dependensi. - Tulis dan beri anotasi pada kode API backend Anda.
- Pelajari anotasi lebih lanjut.
- Tambahkan pengelolaan API.
- Deploy dan uji API Anda.
- Pelajari lebih lanjut jenis parameter dan nilai yang didukung.
Menginstal dan mengonfigurasi software yang diperlukan
Mendapatkan contoh skeleton Endpoints Frameworks
Contoh kerangka Endpoints Frameworks versi 2.0 berisi skrip build yang diperlukan untuk Maven dan Gradle. Direktori ini juga berisi file yang diperlukan untuk mulai membuat API pertama Anda.
Mengonfigurasi file build
Bagian ini menjelaskan file Maven pom.xml
dan Gradle build.gradle
yang disertakan dalam contoh kode. Kecuali untuk memasukkan ID project Google Cloud agar dapat digunakan di nama host, file build siap digunakan untuk mulai membuat API.
Tentang konfigurasi minimum
Bagian ini menjelaskan konfigurasi minimum yang diperlukan dalam file build Anda.
Maven
Dependensi minimum
Berikut adalah dependensi minimum yang diperlukan di
pom.xml
untuk memulai:
Menerapkan plugin
Plugin berikut diterapkan untuk mengaktifkannya:
Gradle
Dependensi plugin
Berikut menunjukkan plugin yang diperlukan untuk membangun API Anda:
Menerapkan plugin
Plugin berikut diterapkan untuk mengaktifkannya di skrip build Gradle Anda:
Dependensi project
Project menggunakan dependensi berikut:
Menentukan nama host untuk layanan Anda
Framework Endpoints menggunakan nama yang kompatibel dengan DNS untuk mengidentifikasi layanan secara unik. Karena Google Cloud project ID dijamin unik secara global, Anda harus menggunakan project ID Google Cloud sebagai bagian dari nama layanan API Anda.
Anda harus menambahkan ID project Google Cloud ke file build untuk mengonfigurasi nama host untuk layanan Anda. Nama host harus dalam format berikut:
YOUR_PROJECT_ID.appspot.com
Saat Anda men-deploy API ke App Engine, entri DNS dengan nama dalam format YOUR_PROJECT_ID.appspot.com
akan dibuat secara otomatis. Nama host adalah
nama layanan Cloud Endpoints dan nama domain yang Anda gunakan
untuk mengirim permintaan ke API Anda.
Maven
Di kolom hostname
, ganti
YOUR_PROJECT_ID
dengan ID project Google Cloud
Anda.
Gradle
Tetapkan variabel projectID
ke ID project Anda. Google CloudContoh:
def projectId = 'example-project-12345'
Mengonfigurasi servlet Endpoints
Servlet Endpoints menangani permintaan masuk dan meneruskannya ke layanan backend yang berjalan di App Engine. Servlet Endpoints diperlukan agar API Anda dikelola oleh Endpoints.
Untuk mengetahui informasi selengkapnya tentang web.xml
, lihat
Deployment descriptor: web.xml
.
Mengonfigurasi deployment App Engine
File appengine-web.xml
digunakan untuk menentukan konfigurasi lingkungan
standar App Engine saat API di-deploy. Lihat
referensi appengine-web.xml
untuk mengetahui informasi selengkapnya.