How to deploy war file to tomcat using command prompt?

后端 未结 8 801
慢半拍i
慢半拍i 2021-01-30 11:05

I have created a war file and put into tomcat/webapps. How to deploy a war file to tomcat using command prompt?

相关标签:
8条回答
  • 2021-01-30 11:20

    As you have already copied the war file to tomcat/webapps, you just need to restart the tomcat to deploy the war file.

    Command prompt:

    set tomcatPath=D:\apache-tomcat-7.0.50
    call "%tomcatPath%"\bin\catalina.bat **stop**
    sleep -m 3000 
    call "%tomcatPath%"\bin\catalina.bat jpda **start**
    
    0 讨论(0)
  • 2021-01-30 11:25

    You could use wget or curl to deploy an app from command line.

    With wget:

    wget --http-user=tomcat --http-password=tomcat "http://localhost:8080/manager/text/deploy?war=file:/some/path/SomeWar.war&path=/SomeWar" -O -
    

    But in my case with wget I received this error: "Failed to deploy application at context path ..."

    So I solved using curl:

    curl -v -u user:password -T app.war 'http://tomcathost/manager/text/deploy?path=/my-app-path&update=true'
    
    0 讨论(0)
  • 2021-01-30 11:26

    You can deploy the war file using tomcat manager app, http://tomcat.apache.org/tomcat-7.0-doc/manager-howto.html#Deploy_A_New_Application_Remotely

    If you want from command prompt, then as I know

    • Stop tomcat (catalina.bat stop)
    • copy war to webapp
    • restart tomcat (catalina.bat run)
    0 讨论(0)
  • 2021-01-30 11:40

    First add a user role in tomcat-users.xml for role manager-script.

    Then to undeploy current app you can use

    wget http://username:password@localhost:portnumber/manager/text/undeploy?path=/appname -O - -q
    

    To deploy

    wget http://username:password@localhost:portnumber/manager/text/deploy?path=/appname&war=file:/warpath -O - -q
    
    0 讨论(0)
  • 2021-01-30 11:40

    Using httpie you can upload and deploy the war.

    http --auth user:pass PUT http://<tomcatURL>/manager/text/deploy?path=/ < ROOT.war
    
    0 讨论(0)
  • 2021-01-30 11:43

    The earlier answers on this page are correct that you can copy/move the WAR file into place and restart tomcat, but they omit to mention something: you must remove the previously exploded assets (from the previously deployed WAR file) if any are present.

    # My tomcat webapps are found at /var/lib/tomcat6/webapps
    # The application I wish to deploy is the main (ROOT) application
    webapps_dir=/var/lib/tomcat6/webapps
    # Remove existing assets (if any)
    rm -rf $webapps_dir/ROOT
    # Copy WAR file into place
    cp example_dir/ROOT.war $webapps_dir
    # Restart tomcat
    service tomcat6 restart
    

    Modify the following for your own system:

    • Path of your compiled WAR file (to be deployed)
    • Path of your tomcat webapps files
    • How to restart tomcat (i.e. if not installed as a service)
    0 讨论(0)
提交回复
热议问题