2010-06-17 14 views
5

Durdurmak, kulak dosyamı dağıtmak ve Ant görevlerini kullanarak Jboss sunucusunu başlatmam gerekiyor.Ant görevini kullanarak jboss sunucusunu başlatıp durdurma?

J2EE uygulamamı Ant görevleri kullanarak başarıyla JBoss sunucusuna bir kulak dosyası olarak derleyebilir, derleyebilir ve dağıtabilirim. Uygulamamın jepos konsolundaki yeniden dağıtımını görebiliriz. Sunucuyu dağıtmadan önce durdurmak ve sunucuyu başlatmak istiyorum.

Bunu yapmanın bir yolu var mı?

cevap

0

Cargo ANT destekler ve çeşitli J2EE kaplar

başlayabilirsiniz/bir uygulamayı dağıtmak dahil JBoss uygulama kabı durdurmak nasıl İşte
4

destekleyecek şekilde tasarlanmıştır: Bu yardımcı olur :)

+1

Tamam, ama JBOSS sunucusu uzaktayken bunu nasıl yapabilirsiniz? – ggb667

0

<!-- Stop Jboss --> 
<target name="stop-jboss" description="Stops back-end EJB container" > 
    <exec executable="${jboss.bin.dir}/shutdown.bat" spawn="true"> 
     <arg line="-S" /> 
    </exec> 
    <echo>+-----------------------------+</echo> 
    <echo>| J B O S S S T O P P E D |</echo> 
    <echo>+-----------------------------+</echo> 
</target> 

<!-- Start Jboss --> 
<target name="start-jboss" description="Starts back-end EJB container" > 
    <exec executable="${jboss.bin.dir}/run.bat" spawn="true"> 
    </exec> 
    <echo>+-----------------------------+</echo> 
    <echo>| J B O S S S T A R T E D |</echo> 
    <echo>+-----------------------------+</echo> 
</target> 

<!-- deploy target--> 
<target name="deploy-war" description="deploy war file" depends="prepare"> 
    <sequential> 
    <antcall target="stop-jboss" /> 
    <war destfile="${file.name}" webxml="conf/web.xml"> 
     <classes dir="bin" /> 
    </war> 
    <antcall target="start-jboss" /> 
     <echo>+----------------------------+</echo> 
     <echo>| W A R D E P L O Y E D |</echo> 
     <echo>+----------------------------+</echo> 
    </sequential> 
</target> 

Umut Uygun os bağımsız yanıt aşağıdaki gibi olacaktır:

<property name="my.jboss.home" value="/path/to/jboss/install/dir" /> 
<property name="my.jboss.host" value="localhost" /> 
<property name="my.jboss.port" value="9999" /> 
<property name="my.jboss.name" value="my-jboss-instance" /> 
<property name="my.jboss.debugport" value="8787" /> 

<!-- supposedly this is built by a seperate task --> 
<property name="my.deployment" value="${basedir}/build/deployment.ear" /> 

<!-- starting preset --> 
<presetdef name="start-jboss-preset"> 
    <java jar="${jboss.home}/jboss-modules.jar" fork="true" taskname="${jboss.name}"> 
     <jvmarg value="-server" /> 
     <jvmarg value="-Xms1024m" /> 
     <jvmarg value="-Xmx1024m" /> 
     <jvmarg value="-Dorg.jboss.boot.log.file=${jboss.home}/standalone/log/server.log" /> 
     <jvmarg value="-Dlogging.configuration=file:${jboss.home}/standalone/configuration/logging.properties" /> 
     <arg line="-mp ${jboss.home}/modules/ -jaxpmodule javax.xml.jaxp-provider org.jboss.as.standalone" /> 
     <jvmarg value="-Djboss.home.dir=${jboss.home}" /> 
     <arg value="-b=localhost" /> 
     <arg value="-c=standalone-full.xml" /> 
     <jvmarg value="-Djboss.node.name=${jboss.name}" /> 
    </java> 
</presetdef> 

<!-- internal task to actually start jboss --> 
<target name="start-jboss"> 
    <start-jboss-preset /> 
</target> 

<!-- internal task to start jboss in debug mode --> 
<target name="start-jboss-debug"> 
    <start-jboss-preset taskname="dbg:${jboss.name}:${jboss.debugport}"> 
     <jvmarg value="-agentlib:jdwp=transport=dt_socket,address=${jboss.debugport},server=y,suspend=n" /> 
    </start-jboss-preset> 
</target> 

<!-- preset to run jboss-cli, this can be used to push any command to a running 
    jboss instance --> 
<presetdef name="jboss-cli"> 
    <java jar="${jboss.home}/jboss-modules.jar" fork="true"> 
     <arg line="-mp ${jboss.home}/modules org.jboss.as.cli" /> 
     <arg value="--controller=${jboss.host}:${jboss.port}" /> 
     <arg value="--connect" /> 
    </java> 
</presetdef> 

<!-- the actual shut down command --> 
<target name="exec-jboss"> 
    <jboss-cli failonerror="true"> 
     <arg value="${jboss.command}" /> 
    </jboss-cli> 
</target> 

<!-- public targets with your properties set --> 
<target name="start" description="starts jboss instance"> 
    <antcall target="start-jboss"> 
     <param name="jboss.home" value="${my.jboss.home}" /> 
     <param name="jboss.name" value="${my.jboss.name}" /> 
    </antcall> 
</target> 

<target name="debug" description="starts jboss instance in debugmode"> 
    <antcall target="start-jboss-debug"> 
     <param name="jboss.home" value="${my.jboss.home}" /> 
     <param name="jboss.name" value="${my.jboss.name}" /> 
     <param name="jboss.debugport" value="${my.jboss.debugport}" /> 
    </antcall> 
</target> 

<target name="stop" description="stops jboss instance"> 
    <antcall target="exec-jboss"> 
     <param name="jboss.home" value="${my.jboss.home}" /> 
     <param name="jboss.host" value="${my.jboss.host}" /> 
     <param name="jboss.port" value="${my.jboss.port}" /> 
     <param name="jboss.command" value="shutdown" /> 
    </antcall> 
</target> 

<!-- a dependent build/package task should be present --> 
<target name="deploy" description="deploys to a running jboss instance"> 
    <antcall target="exec-jboss"> 
     <param name="jboss.home" value="${my.jboss.home}" /> 
     <param name="jboss.host" value="${my.jboss.host}" /> 
     <param name="jboss.port" value="${my.jboss.port}" /> 
     <param name="jboss.command" value="deploy ${my.deployment}" /> 
    </antcall> 
</target> 
İlgili konular