build.xml
ile Dağıtımın Fethi: WebSphere 6 İçin EAR Örneği
Uygulamaları dağıtmak, özellikle WebSphere gibi kurumsal düzey sunucular ile çalışırken zorlayıcı bir meydan okuma olabilir. Geliştiricilerin sıklıkla karşılaştığı bir soru, Enterprise Archive (EAR) dosyasını dağıtmak için Ant kullanarak etkili bir yapı oluşturmanın nasıl yapılacağıdır. Bu makalede, WebSphere 6.1’de EAR uygulamalarını dağıtmak için özel olarak tasarlanmış bir build.xml
dosyasının oluşturulmasına dair ayrıntılı bir örneği adım adım izleyeceğiz. Bu süreci basitleştirerek, uygulamanızın her yerde, her zaman kolayca yeniden derlenip dağıtılabilmesini sağlamayı amaçlıyoruz.
EAR Dağıtımındaki Zorluk
Neden Ant Kullanmalısınız?
Geliştirme ortamında, birçok geliştirici, Ant’ın basit yapısı ve erişilebilirliği nedeniyle Rational Application Development’tan Apache Ant’a geçiş yapmaktadır. Ant, dağıtım tutarlılığı için kritik olan yapı sürecini otomatikleştirmeyi sağlar.
Eğer arkadaşlarınızı Ant’a geçme konusunda ikna etmeye çalışıyorsanız, onlara pratik örnekler ve dağıtımları yönetmenin kolay bir yolunu sunmanız gerekir. İşte burada düzgün yapılandırılmış bir build.xml
devreye giriyor.
Ortamınızı Ayarlama
Koda girmeden önce, aşağıdakilere ihtiyacınız olacağını bilmek önemlidir:
- Ortam: WebSphere Application Server (WAS) 6.1’in uygun bir platformda, örneğin Fedora 8 üzerinde çalıştığından emin olun.
- ANT: Görevlerini etkin bir şekilde kullanabilmek için Apache Ant’ın ortamınızda kurulmuş olduğundan emin olun.
build.xml
Yapısını Anlama
build.xml
dosyası, yapı sürecine rehberlik eder. Aşağıda, Ant kullanarak bir EAR dosyasının dağıtımına odaklanan örnek bir yapılandırma verilmiştir.
Uygulamaları Listeleme
Öncelikle, WAS’ta kurulu olan uygulamaları listelemek için bir hedef oluşturacağız.
<?xml version="1.0"?>
<project name="project" default="wasListApps" basedir=".">
<description>Kurulu uygulamaları listelemek için script.</description>
<property name="was_home" value="/opt/IBM/SDP70/runtimes/base_v61/"/>
<path id="was.runtime">
<fileset dir="${was_home}/lib">
<include name="**/*.jar"/>
</fileset>
<fileset dir="${was_home}/plugins">
<include name="**/*.jar"/>
</fileset>
</path>
<target name="wasListApps">
<taskdef name="wsListApp" classname="com.ibm.websphere.ant.tasks.ListApplications" classpath="${was.runtime}"/>
<wsListApp wasHome="${was_home}"/>
</target>
</project>
EAR Dosyasını Dağıtma
Sonra, aynı build.xml
dosyasında bir dağıtım hedefi ayarlayacağız:
<project name="project" default="default" basedir=".">
<description>WebSphere Application Server 6.1 için bir EAR oluşturma/dağıtma</description>
<property name="was_home" value="/opt/IBM/SDP70/runtimes/base_v61/"/>
<path id="was.runtime">
<fileset dir="${was_home}/lib">
<include name="**/*.jar"/>
</fileset>
<fileset dir="${was_home}/plugins">
<include name="**/*.jar"/>
</fileset>
</path>
<property name="ear" value="${env.HOME}/IBM/rationalsdp7.0/workspace/mywebappDeploy/mywebappEAR.ear"/>
<target name="default" depends="deployEar"/>
<target name="deployEar" depends="generateEar">
<taskdef name="wsInstallApp" classname="com.ibm.websphere.ant.tasks.InstallApplication" classpath="${was.runtime}"/>
<wsInstallApp ear="${ear}" failonerror="true" debug="true" taskname="" washome="${was_home}"/>
</target>
</project>
Önemli Bölümler ve Dikkate Alınacak Hususlar
Dağıtım Notları
- Tek Kullanım: Uygulama adının halihazırda kullanılıyor olması durumunda, yalnızca bir kez kurulum hedefine çalıştırabilirsiniz. Gerekirse, mevcut uygulamaları kaldırmak için
wsUninstallApp
görevini kullanmayı araştırın. - Sunucu Ortamı: Bu script, gerekli ortam ayarlarından yararlanabilmek için sunucunun profil bin dizininden çalıştırılmak üzere tasarlanmıştır.
- Hata Yönetimi:
failonerror
niteliğine dikkat edin; bu niteliğitrue
olarak ayarlamak, bir şeyler ters giderse çalışmayı durduracak ve sorun gidermeye fırsat verecektir.
Düşünülecek Alternatifler
Eğer Ant ile çalışmak biraz zahmetli geliyorsa, Java Management Extensions (JMX) kullanmayı düşünün. Sunucuda bir EAR dosyasını kabul eden bir dosya yükleme servleti yazarak, dağıtım MBean’lerini HTTP üzerinden kullanabilir ve dağıtım sürecinizi daha esnek ve belirli bir geliştirme ortamından bağımsız hale getirebilirsiniz.
Sonuç
Bu yapılandırılmış örnekleri ve yönergeleri takip ederek, WebSphere 6’da Ant kullanarak EAR uygulamalarını etkin bir şekilde dağıtan bir build.xml
dosyası oluşturacak ve çalıştıracak şekilde donanımlı olacaksınız. Bu yalnızca dağıtım sürecinizi basitleştirmekle kalmayacak, aynı zamanda geliştirme ekibinizle işbirliğini çok daha verimli hale getirecektir. Ant’a geçiş başlangıçta zorlayıcı gelebilir, ancak pratik ve doğru kaynaklarla iş akışınızı önemli ölçüde kolaylaştırabilirsiniz.
Kendi yapı sürecinizi ayarlarken bu kılavuzu referans olarak kullanmaktan çekinmeyin. İyi kodlamalar!