时间1024
2018-01-29 10:34
采纳率: 44.4%
浏览 1.2k
已采纳

关于 java 项目 自动部署远程服务器tomcat问题

目的: 实现tomcat 远程部署 ,自动部署

实践: samba 文件共享tomcat
samba问题:
1. 445端口 无法打开(永恒之蓝 445端口不能用)
2. win7无法访问(445端口修改,没有解决)

其它方法:
1. jenkins(还没学)

有没有其他好的解决方案?

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • lyter1214 2018-01-29 10:46
    已采纳

    maven工程用tomcat插件远程部署就行,运行一条命令就可以

    已采纳该答案
    打赏 评论
  • 无才是德 2018-01-29 11:18

    项目组用Myeclipse开发一个JavaWeb项目,每天都要发布新版本到测试服务器的Tomcat。每次都要先导出WAR包,然后上传到服务器指定目录,接着远程登录到服务器上停止Tomcat,删除Tomcat的日志文件、临时文件,webapps下的老的WAR包,然后拷贝新的WAR包至webapps,接着再重启Tomcat。每天都干这个事觉得很繁琐,所以写了一套批处理,每天发布时只要双击一个bat文件,就全自动搞定上述过程!

    cd C:UsersfhWorkspaces"MyEclipse 9"Tradeweb
    del /s /q Trade.war
    jar -cvf Trade.war *

    ::del /s /q \192.168.0.180c$fhTrade.war
    ::xcopy C:UsersfhWorkspaces"MyEclipse 9"TradewebTrade.war \192.168.0.180c$fh

    Rem 本来是用共享目录方式下载/删除服务器指定目录的WAR包,但发现此法有时候受网络影响,不稳定;所以改成ftp方式
    ftp -s:C:UsersfhDesktopserver180.ftp -A

    Rem 调用远程服务,远程部署并重启Tomcat服务器
    start cmd.exe ::启动一个 CMD 终端
    cscript //nologo C:UsersfhDesktoptelnet-192.168.0.180.vbs ::调用脚本文件

    echo 60秒以后,尝试访问可能已经启动完毕后的系统
    for /l %%a in (60,-1,0) do ping -n 2 127.1>nul&cls&echo %%a

    explorer.exe http://192.168.0.180/Trade/login.jsp

    open 192.168.0.180
    binary
    cd /
    delete Trade.war
    put C:UsersfhWorkspaces"MyEclipse 9"TradewebTrade.war
    bye

    set sh=WScript.CreateObject("WScript.Shell")
    WScript.Sleep 1000
    sh.SendKeys"telnet.exe 192.168.0.180{ENTER}"'执行的命令,字符 “~”代表回车
    WScript.Sleep 1000 '延迟 1000
    sh.SendKeys"y{ENTER}"
    WScript.Sleep 1000
    sh.SendKeys"administrator{ENTER}"
    WScript.Sleep 1000
    sh.SendKeys"db2admin{ENTER}"
    WScript.Sleep 1000
    sh.SendKeys"cd{ENTER}"
    sh.SendKeys"cd fh{ENTER}"
    sh.SendKeys"deploy.bat{ENTER}"
    WScript.Sleep 1000

    @echo off
    Rem --------现在开始执行服务器端的deploy.bat文件,重新部署服务器-------------
    Rem 停止Tomcat服务器
    net stop Tomcat6

    echo 等待10秒,让服务器完全停止下来
    for /l %%a in (10,-1,0) do ping -n 2 127.1>nul&cls&echo %%a

    Rem 删除Tomcat目录中的webapps/Trade.war、Trade文件夹, logs/*.log 、 logs/trade 、work/Catalina文件夹
    del /s /q C:"Tomcat 6.0"webappsTrade.war
    rd /s /q C:"Tomcat 6.0"webappsTrade
    del /s /q C:"Tomcat 6.0"logs*.log
    del /s /q C:"Tomcat 6.0"logstrade
    rd /s /q C:"Tomcat 6.0"workCatalina

    Rem 拷贝c:fhTrade.war至Tomcat服务器目录
    xcopy C:fhTrade.war C:"Tomcat 6.0"webapps

    Rem 启动Tomcat服务器
    net start Tomcat6

    打赏 评论
  • Yeomer 2018-01-29 13:11

    赶紧Jenkins吧,好用得很

    打赏 评论
  • stujike123456 2018-01-30 02:34

    端口是否被占用,tomcat 已经部署过一次

    打赏 评论

相关推荐 更多相似问题