Bildiğiniz ve sevdiğiniz Java araçlarını kullanarak kod oluşturun

Java geliştiricileri olarak kullandığımız araçları çok seviyoruz. İşlerimizi daha hızlı ve daha iyi hale getirebilecek kısayollara ve gizli dizilere sahip olduğumuz gibi, odaklanmamıza ve üretken kalmamıza yardımcı olan kendi benzersiz çalışma yöntemimiz vardır. Kodlama için IntelliJ, Eclipse veya VS Code ya da test için JUnit ya da bağımlılık yönetimi ve derleme otomasyonu için Maven veya Gradle kullansak da tercih ettiğimiz araçları bir kenara atıp yeni bir şeyler öğrenmemize neden olabilecek hiçbir şey yoktur. Bu nedenle Azure, Java geliştiricilerine uygulamalarını en sevdiğiniz araçlarda ve çerçevelerde ve tercih ettiğiniz işletim sisteminde buluta getirme gücü sağlar. Şimdi bu araçlardan bazılarını daha yakından inceleyelim.

IDE'ler - VS Code, IntelliJ ve Eclipse

İdeal bir IDE; veri yönetimi, önbelleğe alma, mesajlaşma ve olay oluşturma için arka uç hizmetlerine yönelik denetimler ve izleme araçlarının yanı sıra kaynak kodu, derleme, yerel derleme otomasyonu, test ve hata ayıklamayı düzenlemeye yönelik araçlar içerir. Tüm bu görevleri destekleyen tümleşik bir araç takımı, geliştiricileri daha üretken hale getirerek, her görev için tek başına araçlar arasında sürekli bilgi edinme ve geçiş yapma zorunda kalmamalarını sağlar. IntelliJ, Eclipse ve Visual Studio Code popüler Java IDE'leridir.

Visual Studio Code üzerinde Java

Visual Studio Code (VS Code), Windows, macOS ve Linux üzerinde çalışan basit, belirsiz bir işletim sistemidir. Güçlü bir IDE, Java geliştirme için kapsamlı bir araç takımı sağlar. OpenJDK, Amazon Corretto, Eclipse Adoptium ve Oracle Java SE'nin Microsoft Derlemesi dahil olmak üzere tüm Java Geliştirme Setlerini (JDK) destekler. VS Code tüm Java çerçeveleri, uygulama sunucuları ve Tomcat, Spring Boot, JBoss EAP, WildFly, Quarkus, Open Liberty, Maven ve Gradle gibi diğer popüler araçlarla da iyi bir şekilde tümleştirilir. JavaScript ve SQL gibi Java geliştiricileri tarafından sık kullanılan diğer programlama dillerini de destekler.

Java dosyasını ve Çıkış penceresini gösteren Visual Studio Code'un ekran görüntüsü.

VS Code, Visual Studio Code için çok çeşitli Java uzantıları aracılığıyla Java geliştirme iş akışlarını destekler ve kolaylaştırır. Yalnızca Java için IDE'nin içinden arama yapabileceğiniz birkaç yüz uzantı vardır. Temel Java geliştirme için temel uzantıları Java için Uzantı Paketi'ne paketledik. Bu uzantı paketi proje yönetimi, Maven tümleştirmesi, kod düzenleme, kod tamamlama, kod gezintisi, yeniden düzenleme, linting, biçimlendirme, hata ayıklama, JUnit/TestNG test çalışmalarını çalıştırma ve hata ayıklama gibi uzantılar içerir. Spring Boot uygulamalarını geliştirmeye ve dağıtmaya yönelik spring boot uzantısı paketi de vardır. Azure'da Spring Boot uygulamalarını çalıştırmaya yönelik tam olarak yönetilen bir hizmet olan Azure Spring Apps ile tümleştirme için Spring Initializr desteği de dahildir.

Azure mühendislik ekipleri tarafından oluşturulan Azure Araçları Uzantı Paketi, Java uygulamalarınızı desteklemeye yardımcı olan tüm Azure bulut hizmetlerini keşfetmek ve bunlarla etkileşim kurmak için zengin bir uzantı kümesi sağlar. Java uygulamanızı yazarken, hata ayıklarken ve test ederken VS Code'un içinden tüm uzantıları kullanabilirsiniz. Uygulamanızı dağıtmaya hazır olduğunuzda Azure Araçları Uzantı Paketi, Azure'ın Java uygulamalarını çalıştırmak için sağladığı çeşitli işlem hizmetlerine tek tıklamayla dağıtımı destekler.

Visual Studio Code'daki Java, Java geliştirme için en popüler Visual Studio Code uzantılarına iyi bir genel bakış sağlar. Ayrıca, Visual Studio Code kullanarak Java geliştirmeye başlama yönergelerinin yanı sıra Java geliştiricilerinin daha üretken olmasına yardımcı olabilecek birçok yolu da sağlar.

VS Code'da Java ile Çalışmaya Başlama, Merhaba Dünya programı yazma ve çalıştırma dahil olmak üzere Java Geliştirme için VS Code'u ayarlamayı kapsayan kısa bir öğretici sağlar. Benzer şekilde, Visual Studio Code kullanarak bir Java uygulaması oluşturmayı ve ardından aşağıdakiler gibi hizmetlere tek bir tıklamayla dağıtmayı gösteren kısa öğreticiler vardır:

VS Code'da Java'yı kullanmaya yeni başlıyorsanız ana Komut Paleti'nde "Java: Yeni Başlayanlar için İpuçları" komutunu deneyin.

Java dosyası ve kenar çubuğu bölmesini gösteren Visual Studio Code'un ekran görüntüsü.

Azure Toolkit for IntelliJ

Azure Toolkit for IntelliJ, Java geliştiricilerinin IntelliJ IDE kullanarak Java uygulamaları oluşturmasına, geliştirmesine, test etmesine ve Azure'a dağıtmasına olanak tanır. Örneğin, geliştiriciler Java Web uygulamalarını Azure Uygulaması Service'e ve Azure Uygulaması Service'teki özel kapsayıcılara dağıtmak, Spring Boot uygulamalarını Azure Spring Apps'e dağıtmak veya sunucusuz uygulamaları Azure İşlevleri - bunların tümü Azure'da Java çalıştırmaya yönelik işlem hizmetleridir ve bu hizmetleri bu belgenin ilerleyen bölümlerinde daha ayrıntılı olarak ele alacağız. Spring Cloud Azure tümleştirmeleri, IntelliJ'deki Spring Initializr deneyimleri aracılığıyla sağlanır. Java projenize bağımlılık olarak uygun Java kitaplıklarını ve sürücülerini (Java için Azure SDK dahil) eklemeniz yeter.

Microsoft, Bulutta yerel geliştirme için yeni deneyimler ve Azure Kubernetes Service ve Application Analizler tümleştirmeleri dahil olmak üzere Azure hizmetleriyle daha derin tümleştirme de dahil olmak üzere IntelliJ için daha fazla işlevsellik sağlamak için etkin bir şekilde zaman ve kaynaklara yatırım yapıyor.

Java dosyasını ve Azure'a Dağıt iletişim kutusunu gösteren IntelliJ'nin ekran görüntüsü.

Azure Toolkit for Eclipse

Azure Toolkit for Eclipse, Java geliştiricilerinin Eclipse IDE kullanarak Java uygulamaları oluşturmasına, geliştirmesine, test etmesine ve Azure'a dağıtmasına olanak tanır. Java için Azure SDK dahil olmak üzere önemli Java kitaplıklarını ve sürücülerini içerir. Geliştiriciler Eclipse için Azure Toolkit'i kullanarak Eclipse IDE'den aşağıdaki görevleri gerçekleştirebilir:

  • Java Web Apps'i App Service'te Azure Uygulaması Hizmetine ve özel kapsayıcılara dağıtın.
  • Spring Boot uygulamalarını Azure Spring Apps'e dağıtma.
  • Maven veya Gradle eklentilerini kullanarak sunucusuz uygulamaları Azure İşlevleri dağıtın.

Bağımlılık yönetimi ve derleme otomasyonu - Maven, Gradle ve GitHub

Maven ve Gradle, Java uygulamaları için iki popüler proje yönetimi, bağımlılık yönetimi ve derleme otomasyonu aracıdır. Bu araçlar popüler Java IDE'leriyle iyi tümleştirilmiştir ve her araç için bir dizi eklenti aracılığıyla Azure desteği için tek tıklamayla dağıtım sağlanır.

Azure Hizmetleri için Maven Eklentileri

Azure hizmetlerine yönelik Maven eklentileri, Maven geliştirme iş akışlarınızı Azure'a genişletmenize, Java uygulamalarınızı yerel olarak test edip azure hizmetlerine tek adımda dağıtmanıza olanak tanır. Bu sayede Azure kimlik doğrulama yöntemleri ve Azure Rol Tabanlı Erişim Denetimi ile tümleştirilir. Azure Uygulaması Hizmeti için Maven eklentisi, Maven Java Web uygulaması projelerini Azure Uygulaması Hizmeti'ne ve App Service'teki özel kapsayıcılara dağıtmanıza yardımcı olur. Azure Spring Apps için Maven eklentisi, Maven Spring Boot uygulama projelerini Azure Spring Apps'e dağıtmanıza yardımcı olur. ayrıca Azure İşlevleri için Maven eklentisi, Maven sunucusuz Java uygulama projelerini Azure İşlevleri dağıtmanıza yardımcı olur.

'mvn azure-webapp:deploy' metnini ve Java Web App'i ve Bağımlılıkları Tek Adımda Dağıtma başlığını içeren bir dizüstü bilgisayar ekranını gösteren diyagram.

Azure Hizmetleri için Gradle Eklentileri

Azure hizmetleri için Gradle eklentileri, Maven'a yönelik eklentilere benzer. Java uygulamalarınızı, Azure kimlik doğrulama yöntemleri ve Azure Rol Tabanlı Erişim Denetimi ile tümleştirecek şekilde tek bir adımda Azure hizmetlerine dağıtmanıza olanak tanır. Azure Uygulaması Hizmeti için Gradle eklentisi, Gradle Java Web uygulaması projelerini Azure Uygulaması Service'e ve App Service'teki özel kapsayıcılara dağıtmanıza ve Azure İşlevleri için Gradle eklentisi de Gradle sunucusuz Java uygulama projelerini Azure İşlevleri dağıtmanıza yardımcı olur.

'gradle azureWebAppDeploy' metnine ve Java Web App'i Tek Adımda Dağıt başlığına sahip bir dizüstü bilgisayar ekranını gösteren diyagram.

GitHub

GitHub, Java uygulamaları için popüler bir depodur ve 3,5 milyondan fazla Java uygulaması için bir DevOps ortamı sağlar. Java için GitHub Actions'ı kullanarak aşağıdaki gibi görevleri gerçekleştirebilirsiniz:

  • java'nın istenen bir sürümünü indirin ve kurun.
  • Yerel bir dosyadan özel bir Java sürümünü ayıklayın ve önbelleğe alın.
  • Maven, Gradle veya GPG özel anahtarı kullanarak yayımlamak için çalıştırıcıları yapılandırın.
  • Hata çıkışı için sorun eşleştiricilerini kaydedin.
  • Maven veya Gradle tarafından yönetilen önbellek bağımlılıkları.

GitHub Actions, birinci sınıf CI/CD kullanarak tüm Java yazılım iş akışınızı otomatikleştirmeyi kolaylaştırır. Kodunuzu doğrudan GitHub'dan derleyebilir, test edebilir ve Azure'a dağıtabilirsiniz. Kod incelemeleri, dal yönetimi yapın ve çalışmayı istediğiniz şekilde önceliklendirme sorunu oluşturun. Java uygulamalarınızı çalıştırmak için azure hizmetlerinden herhangi birine dağıtabilirsiniz.

GitHub, GitHub Codespaces veya VS Code Remote - Kapsayıcılar aracılığıyla erişebileceğiniz Java için geliştirme kapsayıcılarını da destekler.

Jenkins İşlem Hatları

Azure'da Java çalıştıran birçok Microsoft müşterisi, uygulamalarını derlemek, test etmek ve dağıtmak için açık kaynak otomasyon sunucusu olan Jenkins'i kullanır. Jenkins kullanıyorsanız kaynak kodunuzu Azure DevOps, GitHub veya başka bir kaynak kodu yönetim sisteminde yönetebilir ve CI/CD derlemeleriniz için Jenkins kullanmaya devam edebilirsiniz. Örneğin, kodunuzu projenizin Git deposuna gönderdiğinizde jenkins derlemesini tetikleyebilirsiniz.

Azure Pipelines

Azure DevOps hizmetinin bir parçası olan Azure Pipelines, Java uygulamalarınızı her platforma ve buluta sürekli olarak derlemenizi, test etmenizi ve dağıtmanızı sağlar. Kaynak denetimi için GitHub (veya Azure Repos) ile birlikte çalışarak Maven veya Gradle kullanarak derlemenizi ve ardından Java uygulamalarınızı çalıştırmaya yönelik Azure hizmetlerinden herhangi birine dağıtmanızı sağlar.

Azure Komut Satırı Arabirimi

Azure Komut Satırı Arabirimi (CLI), komut satırı istemleri veya betikler aracılığıyla terminal komutlarının yürütülmesi dahil olmak üzere Azure kaynaklarını oluşturmaya, bunlara bağlanmaya ve yönetmeye yönelik platformlar arası bir komut satırı aracıdır. Azure CLI'yi Linux, macOS veya Windows tabanlı makinelere yerel olarak yükleyebilir, kapsayıcı içinden çalıştırabilir veya Azure Cloud Shell aracılığıyla bir tarayıcıdan Azure CLI'ya erişebilirsiniz.

Aşağıdaki örnekte, Azure Spring Apps'e uygulama dağıtmak için Azure CLI'nin nasıl kullanılacağı gösterilmektedir:

# Deploy Payment Service
az spring app deploy \
    --name ${PAYMENT_SERVICE_APP} \
    --config-file-pattern payment/default \
    --source-path apps/acme-payment

# Deploy Catalog Service
az spring app deploy \
    --name ${CATALOG_SERVICE_APP} \
    --config-file-pattern catalog/default \
    --source-path apps/acme-catalog

Özet

Azure ile Java kullandığınızda kendi araçlarınızı seçebilirsiniz. Windows, macOS, Linux ve bulut tabanlı makineler dahil olmak üzere istediğiniz makineyi kullanarak herhangi bir Java uygulamasını (çok teknolojili uygulamalar dahil) test edebilir, hata ayıklayabilir ve sorunlarını giderebilirsiniz. Ayrıca uygulamanızı herhangi bir uygulama sunucusunda veya eklenmiş herhangi bir uygulama sunucusuyla Azure'a dağıtabilirsiniz.

Bu makalede açıklanan araçlar için 'Bildiğiniz ve sevdiğiniz Java araçlarını kullanarak kodlayın' metnini ve logolarını içeren diyagram.

Sonraki adım

Java uygulamalarını güvenle ve kolayca dağıtma