精华内容
下载资源
问答
  • 首先你使用的是windows server,在本地安装了perl,然后在perl里安装几个包,在服务器上安装ftp server ,打开服务器的telnet端口,配置好我代码里面的本地war包路径和服务器发布war包的路径,ok,一切就绪,以后...
  • 1.将项目打成war包,复制到${tomcat.home}\webapps目录下.当tomcat启动时会自动将其解包. 2.修改${tomcat.home}\conf\server.xml文件.在Host节点下增加如下代码: <Context docBase="war包绝对路径" ...

    1.将项目打成war包,复制到${tomcat.home}\webapps目录下.当tomcat启动时会自动将其解包.
    2.修改${tomcat.home}\conf\server.xml文件.在Host节点下增加如下代码:
    <Context docBase="war包绝对路径" path="/userapp"reloadable="true"/>
    docBase:指向项目的绝对路径,由于我将项目打成了war包,所以直接指向这个war包就可以了
    path:是一个虚拟目录,这里设置成了"userapp",则启动Tomcat后,你将通过http://localhost:8080/userapp/*.jsp来访问项目的相关页面.
    reloadable:如果设置为"true",则表示当你修改jsp文件后,不需要重启服务器就可以实现页面显示的同步.

    展开全文
  • python自动部署war包到linux(Centos)服务器代码案例原创p_oldpai 最后发布于2018-05-21 09:31:47 阅读数 1099 收藏展开最近使用jenkins自动部署应用到服务器去,最开始使用执行conmand插件去部署,好不稳定而且配置...

    python自动部署war包到linux(Centos)服务器代码案例

    原创p_oldpai 最后发布于2018-05-21 09:31:47 阅读数 1099 收藏

    展开

    最近使用jenkins自动部署应用到服务器去,最开始使用执行conmand插件去部署,好不稳定而且配置也不好配置(因为有多

    个project无法,每个project的路径又不好确定),最终失败而告终,后面又使用jenkins插件 join job +deploy

    war,配置了多个job去实现,终于可以将多个项目成功部署到远程linux(centos)服务器中,这时又发现,部署时间太久了,而且很不稳定,经常性的失败,最终又是以失败告终,经过再三考察和咨询,最终自己写了下面的部署代码,使用

    python plus插件完美解决问题。O(∩_∩)O哈哈~庆祝一下把

    部署环境

    Server:Centos7.4

    client : Win7

    tomcat: apache-tomcat8.5

    python: 2.7

    #!/usr/bin/python

    # -*-coding:utf-8 -*-

    import paramiko

    import datetime

    import urllib2

    import time

    class SSH(object):

    def __init__(self,projectName,host,username,password,port=22):

    print("★"*20+"start deploy project "+projectName +"★"*20)

    self.ssh = paramiko.SSHClient()

    self.ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

    try:

    self.ssh.connect(host, port, username, password)

    print '❤ server ssh create succesful'

    except Exception as e:

    print '❤ server ssh create failed', e

    self.resftp = paramiko.Transport(host, port)

    try:

    self.resftp.connect(username=username,password=password)

    self.sftpssh = paramiko.SFTPClient.from_transport(self.resftp)

    print '❤ server sftp connection succesful'

    except Exception as e:

    print '❤ server sftp connection failed', e

    # 获取当前时间的时间字符串可用于创建文件

    def getCurrentDateString(self):

    i = datetime.datetime.now()

    month = str(i.month) if i.month > 9 else "0" + str(i.month)

    day = str(i.day) if i.day > 9 else "0" + str(i.day)

    hour = str(i.hour) if i.hour > 9 else "0" + str(i.hour)

    minute = str(i.minute) if i.minute > 9 else "0" + str(i.minute)

    second = str(i.second) if i.second > 9 else "0" + str(i.second)

    cuurentDate = "{0}{1}{2}{3}{4}{5}".format(i.year, month,day,hour,minute,second)

    return cuurentDate

    # 移动文件,给文件名后面加时间戳

    def moveFile(self, filepath, fileName):

    filepath = filepath + 'webapps/' + fileName + '.war'

    if self.existFile(filepath).strip() != '':

    errInfo = '❤ the file'+fileName+"is not found"

    else:

    date = self.getCurrentDateString()

    command = 'mv ' + filepath + ' ' + filepath + date

    stdin, stdout, stderr = self.ssh.exec_command(command)

    errInfo = stderr.read()

    print '❤ mv and rename file succesful'

    return errInfo

    # 杀服务进程

    def killProcess(self, processName):

    command = "kill -9 $(ps -ef|grep " + processName + "|gawk '$0 !~/grep/ {print $2}' |tr -s '\\n' ' ')"

    stdin, stdout, stderr = self.ssh.exec_command(command)

    print "❤ kill "+ processName +" process succesfull"

    return stderr.read()

    # 执行linux命令

    def delOldFile(self, command):

    command = 'rm -rf ' + command

    stdin, stdout, stderr = self.ssh.exec_command(command)

    print '❤ Exec Command', command, 'successful'

    return stderr.read()

    # 连接服务器将文件上传至服务器

    def putFileToServer(self,originalFilePath, targetFilePath, targetFileName):

    targetPath = targetFilePath + 'webapps/' + targetFileName + '.war'

    self.sftpssh.put(originalFilePath, targetPath)

    print '❤ put war package to server succesful'

    # 启动Tomcat

    def startTomcat(self, command):

    command = command + 'bin/startup.sh'

    stdin, stdout, stderr = self.ssh.exec_command(command)

    print '❤ Exec Command', command, 'successful'

    return stderr.read()

    # 判断文件是否存在

    def existFile(self, filepath):

    command = 'ls ' + filepath

    stdin, stdout, stderr = self.ssh.exec_command(command)

    return stderr.read()

    # 验证是否部署成功

    def openPage(self, url):

    print '❤ request check url is == ' + url

    times = 1

    while times<=60:

    try:

    urllib2.urlopen(url, timeout=1)

    break

    except Exception as e:

    times += 1

    time.sleep(1)

    else:

    print("▉"*50)

    raise ValueError

    #释放资源

    def __del__(self):

    self.ssh.close()

    self.sftpssh.close()

    class Deploy(object):

    def __init__(self,host,username,password,projectName):

    self.host = host

    self.projectName = projectName

    self.ssh = SSH(projectName, host, username, password)

    def deploy(self,serverTomcatPath,clientWarPath,appprot):

    self.serverTomcatPath=serverTomcatPath

    self.clientWarPath=clientWarPath

    self.jenkinsBasePath = clientWarPath + projectName + "/target/" + projectName + ".war" # 本地war地址

    self.serverProjectPath = serverTomcatPath + "webapps/" + projectName

    self.projectURl = "http://"+host+":"+appprot+"/" + projectName

    self.ssh.killProcess(self.serverTomcatPath) #删除tomcat进程

    self.ssh.moveFile(self.serverTomcatPath, self.projectName) #备份服务器war包

    self.ssh.delOldFile(self.serverProjectPath)#删除工程解压文件

    self.ssh.putFileToServer(self.jenkinsBasePath, serverTomcatPath, projectName) #上传war包到服务器

    self.ssh.startTomcat(self.serverTomcatPath) #启动tomcat

    self.ssh.openPage(self.projectURl) #打开project工程首页

    if __name__ == '__main__':

    host = '服务器地址'

    username = '用户名'

    password = '密码'

    #clientWarPath = u"D:/Jenkins_workspace/jenkins编译路径/" #windows专用

    clientWarPath = "D:/Jenkins_workspace/jenkins编译路径/"

    errrorList=[]

    #部署toms

    projectName= 'taxi-toms'

    serverTomcatPath = '/usr/local/software/tomcat1路径/' #需要到bin级别

    apport = '8084'

    deploy = Deploy(host,username,password,projectName)

    try:

    deploy.deploy(serverTomcatPath,clientWarPath,apport)

    except:

    errrorList.append(projectName)

    #部署client

    projectName= 'taxi-client'

    serverTomcatPath = '/usr/local/software/tomcat2路径/' #需要到bin级别

    apport = '8083'

    try:

    deploy.deploy(serverTomcatPath,clientWarPath,apport)

    except:

    errrorList.append(projectName)

    try:

    deploy.deploy(serverTomcatPath,clientWarPath,apport)

    except:

    errrorList.append(projectName)

    英语不好,中间有好多错别字,请见谅。。。。

    ————————————————

    版权声明:本文为CSDN博主「p_oldpai」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

    原文链接:https://blog.csdn.net/cjh365047871/article/details/80388109

    展开全文
  • War包一般是在进行Web开发时,通常是一个网站Project下的所有源码的集合,里面包含前台HTML/CSS/JS的代码,也包含Java的代码。 当开发人员在自己的开发机器上调试所有代码并通过后,为了交给测试人员测试和未来进行...

    原文:
    将web项目war包部署到Tomcat服务器基本步骤完整版

    1.1 War包

    War包一般是在进行Web开发时,通常是一个网站Project下的所有源码的集合,里面包含前台HTML/CSS/JS的代码,也包含Java的代码。

    当开发人员在自己的开发机器上调试所有代码并通过后,为了交给测试人员测试和未来进行产品发布,都需要将开发人员的源码打包成War进行发布。

    War包可以放在Tomcat下的webapps或者word目录下,随着tomcat服务器的启动,它可以自动被解压。
    一般打包成war包以后的文件包含(将.war格式的文件时候好压或360压缩打开):
    这里写图片描述
    1.2 Tomcat服务器

    Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选,最新的Servlet和JSP规范总是能在Tomcat中得到体现。

    2. 配置Java运行环境
    2.1 下载并安装JDK
    从官网上下载最新的JDK:http://java.sun.com/javase/downloads/index.jsp ,下载后安装,选择想把JDK安装到的目录。JRE是包含在JDK中的,所以不需要再另外安装JRE了。

    2.2 设置JDK环境变量
    右击“计算机”,点击“属性”,点击弹出窗口中左侧的“高级系统设置”,在弹出的选项卡中选择“高级->环境变量”。

    假设你本地JAVA的JDK安装的位置为:C:\Program Files\Java\jdk1.7.0_45。

       在这里,新建2个环境变量,编辑1个已有的环境变量。如下:
    

    新建变量名:JAVA_HOME;

    变量值:你安装JDK的安装目录,在这里为C:\Program Files\Java\jdk1.7.0_45。
    这里写图片描述
    新建变量名:CLASSPATH

    变量值:

    .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%TOMCAT_HOME%\BIN

    (注意最前面有个.号)

    编辑环境变量的路径:

    变量名:Path;

    变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

    (将此处的字符串粘贴到变量值的最前面)

    2.3 验证是否JDK环境变量设置成功
    点击开始并输入CMD,在命令行分别输入:java; javac; java –version.

    如果分别显示如下信息,说明你的Java环境变量已经配置成功。

    输入Java,显示:
    这里写图片描述
    输入Javac,显示:
    这里写图片描述

    输入java –version,显示:
    这里写图片描述

    3.将项目打成war包
    选中即将打包的项目,右键—>Export–>
    这里写图片描述
    然后next
    这里写图片描述
    这样war包就打好了

    4. 部署Tomcat服务器

    3.1 下载Tomcat到本地硬盘
    从官网上下载Tomcat服务器。官网上下载的文件都是绿色免安装的。

    下载地址为:http://tomcat.apache.org/download-70.cgi

    下载后解压缩,如E:\apache-tomcat-7.0.26。

    3.2 设置Tomcat环境变量
    依然是点开电脑的环境变量对话框。

    新建一个环境变量:

    变量名:TOMCAT_HOME

    变量值:你的TOMCAT解压后的目录,如E:\apache-tomcat-7.0.26。

    3.3 验证Tomcat环境变量的配置是否成功
    运行Tomcat解压目录下的 bin/startup.bat,启动Tomcat服务器。在任何一款浏览器的地址栏中输入http://localhost:8080 ,如果界面显示如下图,则说明Tomcat的环境变量配置成功。

    tomcat启动的窗口为:
    这里写图片描述

    4. 部署Web项目的War包到Tomcat服务器
    将projectName.war包,复制到Tomcat的webapp下。这样当配置好后的访问路径便为:http://localhost:8080/projectName/login.jsp
    {将war包复制完以后直接bin/startup.bat,启动Tomcat服务器就ok了}
    在访问之前,需要修改tomcat服务器的配置文件,打开:

    tomcat解压目录\conf\context.xml。将运行该web项目时,需要配置的数据库连接字符串增加到该xml文件中。增加后的context.xml为:

    展开全文
  • 修改当前目录下js文件(xshell进行服务器连接) gedit ./draw.js

    修改当前目录下的js文件(xshell进行服务器连接)

    gedit  ./draw.js

    展开全文
  • War包一般是在进行Web开发时,通常是一个网站Project下的所有源码的集合,里面包含前台HTML/CSS/JS的代码,也包含Java的代码。 当开发人员在自己的开发机器上调试所有代码并通过后,为了交给测试人员测试和未来进行...
  • War包一般是在进行Web开发时,通常是一个网站Project下的所有源码的集合,里面包含前台HTML/CSS/JS的代码,也包含Java的代码。(项目已经开放结束,基本很少改动) 当开发人员在自己的开发机器上调试所有代码并通过...
  • Jenkins从svn下载项目构建项目打war包发布到远程Linux服务器需求Jenkins的安装和插件的安装功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的...
  • 1. 常识: 1.1 War包War包一般是在进行Web开发时,通常是一个网站Project下的所有源码的集合,里面包含前台HTML/CSS/JS的代码,也包含Java的代码。当开发人员在自己的开发机器上调试所有代码并通过后,为了交给测试...
  • War包一般是在进行Web开发时,通常是一个网站Project下的所有源码的集合,里面包含前台HTML/CSS/JS的代码,也包含Java的代码。 当开发人员在自己的开发机器上调试所有代码并通过后,为了交给测试人员测试和未来进行...
  • JAR包:打成JAR包的代码,一般作为工具类。在项目中,会应用到N多JAR工具包,所以jar包又称工具包; WAR包:JAVA WEB工程都是打成WAR包进行发布,如果我们的服务器选择TOMCAT等轻量级服务器,一般就打出WAR包进行...
  • spring boot既可以打成war包发布,也可以找成jar包发布。...但是这个“压缩包”可以被编译器直接使用,把war包放在tomcat目录webapp下,tomcat服务器在启动时候可以直接使用这个war包。通常tomcat
  • 照做后重启了下服务器war包确实解压了,但是并没有任何软用。在8080/后直接加项目名称会出现403错误。2.百度后发现,要在tomcatconf目录下修改 server.xml,具体代码为<Context docBase="vip.war" path="/" ...
  • War包一般是在进行Web开发时,通常是一个网站Project下的所有源码的集合,里面包含前台HTML/CSS/JS的代码,也包含Java的代码。 当开发人员在自己的开发机器上调试所有代码并通过后,为了交给测试人员测试和未来进行...
  • 一、当开发人员在自己开发机器上调试所有代码并通过后,为了进行产品发布,都需要将开发人员源码打包成War包进行发布。javaWeb项目(非maven项目,IntelliJ IDEA环境下)打包方式如下: (1)首先在IntelliJ ...
  • jar包和war包都可以看成压缩文件,都可以用解压软件打开,jar包和war包都是为了项目部署和发布,通常在打包部署时候,会在里面加上部署相关信息。这个打包实际上就是把代码和依赖东西压缩在一起,变成后缀名...
  • JAR包:打成JAR包的代码,一般作为工具类,在项目中,会应用到N多JAR工具包; WAR包:JAVA WEB工程,都是打成WAR包,进行发布,如果我们的服务器选择TOMCAT等轻量级服务器,一般就打出WAR包进行发布; EAR包:...
  • JAR包:打成JAR包的代码,一般作为工具类,在项目中,会应用到N多JAR工具包; WAR包:JAVA WEB工程,都是打成WAR包,进行发布,如果我们的服务器选择TOMCAT等轻量级服务器,一般就打出WAR包进行发布; EAR包:...
  • JAR包:打成JAR包的代码,一般作为工具类,在项目中,会应用到N多JAR工具包。WAR包:JAVA WEB工程,都是打成WAR包,进行发布,如果我们的服务器选择TOMCAT等轻量级服务器,一般就打出WAR包进行发布。EAR包:这针对...

空空如也

空空如也

1 2 3 4 5 ... 10
收藏数 187
精华内容 74
关键字:

服务器发布war包的代码