Buat fungsi pertama Anda dengan Java dan Eclipse
Artikel ini memperlihatkan kepada Anda cara membuat proyek fungsi nirserver dengan Eclipse IDE dan Apache Maven, menguji dan men-debugnya, lalu menyebarkannya ke Azure Functions.
Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.
Menyiapkan lingkungan pengembangan Anda
Untuk mengembangkan aplikasi fungsi dengan Java dan Eclipse, Anda harus sudah menginstal berikut ini:
- Java Developer Kit, versi 8, 11, 17 atau 21. (Java 21 saat ini hanya didukung dalam pratinjau di Linux)
- Apache Maven, versi 3.0 atau yang lebih tinggi.
- Eclipse, dengan dukungan Java dan Maven.
- Azure CLI
Penting
Variabel lingkungan JAVA_HOME harus diatur ke lokasi instalasi JDK untuk menyelesaikan quickstart ini.
Sangat disarankan untuk juga menginstal Azure Functions Core Tools, versi 2, yang menyediakan lingkungan lokal untuk menjalankan dan men-debug Azure Functions.
Buat proyek Functions
- Di Eclipse, pilih menu File, lalu pilih Baru -> Proyek Maven.
- Terima default dalam dialog Proyek Maven Baru dan pilih Berikutnya.
- Temukan dan pilih azure-functions-archetype dan klik Berikutnya.
- Pastikan untuk mengisi nilai untuk semua bidang termasuk
resourceGroup
,appName
, danappRegion
(gunakan appName yang berbeda selain fabrikam-function-20170920120101928), dan terakhir Selesai.
Maven membuat file proyek di folder baru dengan nama artifactId. Kode yang dihasilkan di dalam proyek adalah fungsi sederhana yang dipicu HTTP yang menggemakan isi permintaan HTTP pemicu.
Jalankan fungsi secara lokal di IDE
Catatan
Azure Functions Core Tools, versi 2 harus diinstal untuk menjalankan dan men-debug fungsi secara lokal.
- Klik kanan pada proyek yang dihasilkan, lalu pilih Jalankan Sebagai dan Maven build.
- Dalam dialog Edit Konfigurasi, Masukkan
package
di bidang Tujuan, lalu pilih Jalankan. Ini akan membangun dan mengemas kode fungsi. - Setelah build selesai, buat konfigurasi Run lain seperti di atas, menggunakan
azure-functions:run
sebagai tujuan dan nama. Pilih Jalankan untuk menjalankan fungsi.
Hentikan runtime di jendela konsol saat Anda selesai menguji fungsi Anda. Hanya satu host fungsi yang dapat aktif dan berjalan secara lokal pada satu waktu.
Debug fungsi di Eclipse
Di konfigurasi Jalankan Sebagai yang disiapkan di langkah sebelumnya, ubah azure-functions:run
ke azure-functions:run -DenableDebug
dan jalankan konfigurasi yang diperbarui untuk memulai aplikasi fungsi dalam mode debug.
Pilih menu Jalankan dan buka Konfigurasi Debug. Pilih Aplikasi Java Jarak Jauh dan buat aplikasi baru. Beri nama konfigurasi Anda dan isi pengaturannya. Port harus konsisten dengan port debug yang dibuka oleh host fungsi, yang secara default adalah 5005
. Setelah penyetelan, klik Debug
untuk memulai debugging.
Atur titik henti dan periksa objek dalam fungsi Anda menggunakan IDE. Setelah selesai, hentikan debugger dan host fungsi yang sedang berjalan. Hanya satu host fungsi yang dapat aktif dan berjalan secara lokal pada satu waktu.
Terapkan fungsi ke Azure
Proses penyebaran ke Azure Functions menggunakan kredensial akun dari Azure CLI. Masuk dengan Azure CLI sebelum lanjut menggunakan prompt perintah komputer Anda.
az login
Terapkan kode Anda ke dalam aplikasi Function baru menggunakan azure-functions:deploy
tujuan Maven di konfigurasi Jalankan Sebagai baru.
Setelah penyebaran selesai, Anda akan melihat URL yang dapat digunakan untuk mengakses aplikasi fungsi:
[INFO] Successfully deployed Function App with package.
[INFO] Deleting deployment package from Azure Storage...
[INFO] Successfully deleted deployment package fabrikam-function-20170920120101928.20170920143621915.zip
[INFO] Successfully deployed Function App at https://fabrikam-function-20170920120101928.azurewebsites.net
[INFO] ------------------------------------------------------------------------
Langkah berikutnya
- Tinjau panduan pengembang Java Functions untuk informasi selengkapnya tentang mengembangkan fungsi Java.
- Tambahkan aplikasi fungsi tambahan dengan pemicu berbeda ke proyek Anda menggunakan
azure-functions:add
target Maven.