maven(17)-自动发布到远程linux服务器

idea 自动打包Maven项目并部署到远端服务器 idea 一键部署云端服务器,自动重启、自动输出日志到idea 阅读详情


发布方式

手工方式:需要做一系列的工作,包括打WAR包,上传到服务器,重启服务器,删除旧文件等

自动方式:一条命令完成以上所有过程


服务器环境

centos7.3和tomcat8,关于centos的应用,涉及LINUX方面的知识以后有机会再讲,这里假设已经在centos上部署好了tomcat


pom.xml

		<extensions>
			<extension>
				<groupId>org.apache.maven.wagon</groupId>
				<artifactId>wagon-ssh</artifactId>
				<version>2.10</version>
			</extension>
		</extensions>
		<plugins>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>wagon-maven-plugin</artifactId>
				<version>1.0</version>
				<configuration>
					<fromFile>target/test-1.0.war</fromFile>
					<toFile>test.war</toFile>
					<url>scp://wb:123@192.168.150.128/home/wb/pro/tomcat/webapps</url>
					<commands>
						<command>/home/wb/pro/tomcat/bin/shutdown.sh</command>
						<command>rm -rf /home/wb/pro/tomcat/webapps/test</command>
						<command>/home/wb/pro/tomcat/bin/startup.sh</command>
					</commands>
					<displayCommandOutputs>true</displayCommandOutputs>
				</configuration>
			</plugin>
		</plugins>

<extensions>:是maven扩展构件

wagon-maven-plugin:是自动上传的插件

<fromFile>:需要发布的本地文件名

<toFile>:发布到服务器后的文件名

<url>:协议://centos用户名:密码@服务器IP/tomcat的webapps目录,这是url的基本格式,发布到远程tomcat的webapps下

<commands>:按顺序执行linux命令,第一条是关闭tomcat,第二条是删除旧项目文件,第三条是启动 tomcat。

<displayCommandOutputs>:true是显示命令执行结果


执行命令

在eclipse中右键项目--运行方式--maven build...--goals中输入 package wagon:upload-single wagon:sshexec,运行,运行过程中可能会需要你输入一个yes--回车

这个命令的意思

package:打war包

wagon:upload-single:上传war包到pom.xml中的url,会自动覆盖url中旧的war包

wagon:sshexec:执行<commands>中的命令

执行结果:将本地修改过的项目代码,通过插件配置,自动打成WAR包上传到服务器,自动删除旧项目,自动重启tomcat


Jenkins自动打包并部署到远程服务器 本文主要介绍了使用Jenkins自动打包到远程服务器。 一、Jenkins简介 Jenkins是一个开源软件项目,是基于Java开发的广泛用于持续构建的可视化web工具,就是各种项目的的“自动化”编译、打包、分发部署,将传统编译、打包、上传、部署到Tomcat中的过程交由Jenkins,Jenkins通过给定的代码地址,将代码拉取到jenkins宿主机上,进行编译、打包和发布到web容器中。J... 阅读详情

相关推荐

Maven在Linux下的安装与配置指南

本文还有配套的精品资源,点击获取 简介:Maven是一个简化Java项目构建和依赖管理的工具。本文详细介绍在Linux系统上安装和配置Maven的步骤,包括系统环境检查、下载、解压、配置环境变量、验证安装、配置Maven设置以及首次构建项目。同时,还提供了如何自动更新Maven版本的指导,这对于Java开发者来说是管理项目和依赖的重要技能,尤其是在服务器环境中。 ...

weixin_36296444的博客 4438

SpringBoot+maven本地打包发布到Linux服务器

1.clean 2.compile 3.package 4.第三部完成后,会在项目的target目录下生成jar包 5.通过软件将jar包传输到linux,目录随便 6.在有jdk环境的前提下(centos自带openjdk),没有的话先装好环境,使用命令 java -jar xxx.jar 可以启动,但是这种方式启动之后不能进行任何操作。 7.使用 nohup java -jar xxx.jar > nohup.out 2&1>& 命令可以让程序在后台.

拾信 815

Duplicate Cleaner Pro 5.16 保姆级教程:如何用哈希值精准清理重复文件(附音频/视频模式详解)

本文详细介绍了Duplicate Cleaner Pro 5.16如何利用哈希值技术精准清理重复文件,特别针对音频、视频和图片等多媒体文件提供了专业解决方案。通过哈希算法比对和多媒体特征识别,帮助用户高效管理存储空间,提升文件整理效率。

weixin_27032989的博客 570

maven项目打包生成docker镜像上传到Linux服务器

1、完成编码后,在pom文件中增加: <plugin> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <version>0.4.13</version> <con...

zmm0420的专栏 1760

手把手教你用STM32的SPI驱动MCP2517FD实现CAN FD通信(附完整代码)

本文详细介绍了如何使用STM32通过SPI驱动MCP2517FD实现CAN FD通信,涵盖硬件连接、SPI驱动编写、寄存器配置及数据收发实战。提供完整代码示例和常见问题排查指南,帮助开发者快速构建高可靠性的CAN FD通信系统,适用于汽车电子和工业控制等领域。

weixin_30607029的博客 676

AI开发助手介绍

AI开发助手介绍随着NLP方向发展越来越成熟,AI写代码领域出现了几个非常好的模型,今天笔者给大家推荐几个AI Coding 助手AI Coding助手是以IDEA插件或vim插件形式提供服务,在编辑器中写代码时,可以实时预测下一行要输入的代码,提升开发效率。Github Copilot首先要介绍的是Github Copilot,Copilot是个AI Coding助手,它从注释和代码中提取上下文,给出单行和整个函数的代码建议,Copilot由Open AI 的CodeX模型提供支持,它是一个由OpenAI

bobo_simpler的博客 5768

【Java 接口】Maven配置JSch实现ssh远程操作-上传下载功能【三】

简介 调用JSch封装类方法实现服务端上传和下载操作 场景 1、上传:本地D:/userinfo.txt上传到服务端/root/tmp/路径 2、下载:服务端/root/tmp/log.txt下载到本地D:/log20200308.txt String upload_src = "D:/userinfo.txt"; String upload_dst = "/root/tmp/";...

weixin_43904134的博客 696

多普勒效应及多普勒频移的简单推导

多普勒频移的简单推导

m0_47867419的博客 3万+

Linux下基于Maven的自动化打包发布项目

基于Maven的自动化打包发布项目

Ganymede的Hadoop世界 6480

从泛光成像到可寻址扫描:Flash激光雷达的车规级优势与技术演进

Flash激光雷达凭借固态架构优势成为自动驾驶感知技术的重要发展方向。该方案无机械部件,具备抗振动、长寿命等特点,同时CMOS工艺带来显著成本优势。但传统泛光式存在能量弥散问题,难以兼顾大视场和远距离探测。可寻址扫描技术通过分区点亮VCSEL阵列,有效提升局部能量密度,在保持固态可靠性的同时突破性能瓶颈。这种"电子扫描+分区点亮"的混合架构,使Flash激光雷达有望实现大视场、远距离、高可靠和低成本的多重突破,推动自动驾驶技术发展。

致力于lidar应用开发 235

把 SAP Workflow 的 Task 搞懂:从 TS 到 WS 的建模、触发与排错全景

摘要:SAP Business Workflow中的Task是工作流设计的核心单元,分为single-step(独立执行)和multistep(流程编排)两种类型。Task设计直接影响流程的可复用性、扩展性和可排错性。系统将Task分为5类(TS/T/WS/WF/TG),运行时通过事件触发、Linkage匹配、Work Item执行的链路完成流程驱动。关键事务码包括PFTC_INS(创建Task)、SWE2(事件配置)等。正确设计Task边界并遵循"先业务提交后事件触发"原则,是构建稳定

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 275

Maven插件wagon-maven-plugin自动化部署Java项目到Linux远程服务器

通常情况下,程序开发完成后部署到线上Linux服务器,可能需要经历打包、将包文件传到服务器、SSH连上服务器、敲命令启动程序等一系列繁琐的步骤。实际上这些步骤都可以通过Maven的一个插件wagon-maven-plugin来自动完成。配置Linux服务器用户名和密码为了让wagon-maven-plugin插件能SSH连上Linux服务器,首先需要在Maven的配置文件settings.xml中配

叉叉哥的BLOG 6792

手把手教你使用双流网络结构(CTSDG)实现图像修复训练和推理,GAN图像修复,含完整代码和数据集,全网最详细教程

手把手教你使用双流网络结构(CTSDG)实现图像修复训练和推理,GAN图像修复,含完整代码和数据集,全网最详细教程。该模型采用生成对抗网络(GAN)架构,由生成器和判别器两大部分组成。生成器采用 双分支编码-解码结构处理图像的纹理与结构信息,并通过双向特征融合(Bi-GFF)和通道特征聚合(CFA)模块提升修复质量;判别器则通过分析图像的纹理和结构来区分真实图像与生成图像。整个模型利用多任务损失函数进行优化,以实现高质量的图像补全。

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 939

win10 idea使用docker maven本地构建镜像发布至远程Linux服务器

1.远程Linux服务器安装好docker; 2.在pom.xml文件里添加如下依赖:其中远程地址指的是Linux服务器的ip地址(或者其他服务器端IP地址) <plugin> <groupId>com.spotify</groupId> <artifactId>docker-ma...

java_MrZHANG的博客 1239

CE电流法测试中的dBμV负值解析

传导发射(CE)电流法测试中出现的dBμV负值现象表明被测设备干扰电平低于1μV参考基准。这源于对数计算特性(小于1μV的电压转换后为负值)、设备优良的EMC设计(如滤波效果显著)及测试环境的影响(LISN隔离、屏蔽室低噪声)。负值虽不代表实际负电压,但反映干扰水平优于标准限值,为系统集成预留电磁裕度。工程应用中需结合设备灵敏度、环境背景噪声等因素综合分析,避免误判,这类数据可用于评估EMI设计冗余度。

硬核科技 298

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

linux svn 自动发布,linux svn tomcat maven 自动发布打包

1:首先确定了LINUX上已安装SVN MAVEN2: 把SVN项目CHECKOUT到LINUX服务器svn checkout svn://172.17.210.82:9999/xxx --username zhang.lh --password xx3:脚本1:#!/bin/sh#Description:oms发布脚本#Version:1.0#Author:dong.j#Date:2013-12...

weixin_35998457的博客 113

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Linux下使用Jenkins+Git+Maven+码云搭建自动化部署,可远程部署jar和war

写在前面:       本教程为2台全新阿里云服务器CentOS 6.8(以下称搭建Jenkins的为第1台服务器,可访问项目工程的为第2台服务器,以免混淆,没有说明的都是在第1台服务器root目录上操作,记得添加端口安全组和关闭防火墙),git仓库使用的是码云。       整个教程包括了jdk、tomcat、Git、Maven、Maven私服、Jenkins、zookeeper等的搭建,全部代...

zhou870498的博客 8253

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Jenkins打包Gitlab代码发布到远程Linux服务器

引言 首先贴上一张Jenkins部署的原理图: 从上图可以知道,Jenkins自动化部署流程如下: Jenkins通过Git/SVN插件从远程代码仓库检出代码 Jenkins通过Maven插件对代码进行打包 Jenkins使用Deploy插件(如ssh)发布打包后的代码去远程应用服务器 对于Jenkins,要实现以上功能,必须满足以下几个条件: 安装JDK、Maven仓库 安装git/svn插件、maven插件、deploy插件(如ssh) 配置项目相关的内容(如:git仓库地址、maven命令、执

阿甘兄 1721

Jenkins maven自动发布配置

1、首先准备java环境,安装JDK 2、下载jenkins至Linux服务器 下载地址:https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+on+Red+Hat+distributions#InstallingJenkinsonRedHatdistributions-ImportantNoteonCentOSJava ...

常年被追砍的博客 982

在linux上使用jenkins构建maven项目jar

在linux上使用jenkins构建maven项目 构建准备 在正式构建之前需要先设置下jenkins 点击Manage Jenkins,然后点击Global Tool Configuration工具配置,配置JDK,Maven等 1.在jenkins上点击新建一个任务,填好任务名 2.点击源码管理,填写github(或gitlab等)地址: 输入构建命令 若项目的pom.xml文件不在项目的...

彼岸笙箫的博客 1308

CentOS7 安装配置 jenkins 及 自动从gitlab上拉取代码自动打包并发布到远程tomcat服务器

jenkins 是一个开源软件项目,是基于 java 开发的一种持续集成工具,本文是对 jenkins2.176(目前最新稳定版) 进行安装和配置,实现 gitlab 上获取项目,并进行持续化自动部署。 jenkins从gitlab上拉取的项目在/var/lib/jenkins/workspace 目录下面 一、jenkins 安装部署 1. jenkins 下载和安装 到htt...

wudinaniya的博客 4659

maven+idea 自动部署项目到linux服务器及遇到的一些问题

一、环境 本教程使用的环境如下 1. idea 2017 2. tomcat 8.5 3. centos 7 4. maven 3.5 注意:tomcat6 和 tomcat7、8、9会有一些区别,下面会详细介绍 二、配置【只需完成下面三步】 1、Tomcat 服务器配置 如果不了解 Tomcat

张天壮 4092

说说如何使用 Maven 实现远程部署(Linux)

这里会使用 wagon-maven-plugin 插件,通过 SSH 连接到 Linux 服务器。 1 配置服务器 首先,打开 Maven 的配置文件 settings.xml。 可以在 IDEA 的 Settings → Build,Execution,Deployment → Maven → User settings file 选项,看到 settings.xml 所在的位置: 在 ...

读万卷书,行万里路 950
上一篇: maven(16)-灵活的环境构建
下一篇: spring boot(1)-Hello World
free_java
博客等级 码龄10年 664粉丝 131原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值