1. 安装Alibaba Cloud Toolkit插件

2. 配置部署环境

2.1 为本次部署设置一个名字

2.2 选择被部署文件的生成方式

IDEA提供了三种方式:Maven BuildUpload FileGradle Build,虽然我的SpringBoot项目使用的是Maven构建工具,但是我一般情况下选择Upload File的方式。因为我的项目是多模块项目,选择Maven Build方式的话IDEA并不知道需要上传的是哪个jar包(因为在每个模块下都会生成自己的jar包)。

使用Upload File特别需要注意的一点是,我们需要在自动部署之前先手动打个jar包,这样我们才能选择我们想上传的jar包,这一步并不意味着我们会上传刚刚手动打包的文件,只是告诉IDEA以后上传的文件的目录和名称而已。

手动打包的方式

然后选择你想上传的jar包即可,如下图

2.3 选择目标服务器

2.3.1 配置过了?直接选择

如果你之前配置过远程服务器的信息,直接选择即可,跳过配置的步骤;

如果没有配置,那你需要先配置一下

2.3.2 没配置过?那就配置服务器

点击左下角的Manage Host按钮,此时应该弹出如下界面,如果没有弹出,找到下图中的按钮点击即可

点击Add Host按钮,填写你的主机信息

其中,验证方式有两种

  • Password:就是通过密码校验你的身份
  • Select a Private Key:通过本地密钥文件验证你的身份

填写完之后,点击测试链接状况,查看是否链接成功,成功的话点击添加按钮;否则检查配置信息直到添加成功为止。

配置完服务器信息你就能选择你的主机了,如下图所示,选中它,然后点击Select即可

2.4 填写文件传输的目标目录(Target Directory)

就是说你想把jar放在服务器的哪个目录下

2.5 配置After deploy

从名字看出来,这是让我们设置deploy之后的动作,IDEA理解的deploy只是把你要上传的文件传到服务器上而已。

接下来点击Select Command按钮,选择你要运行的命令,如果你之前配置过,那就选择就好了;没配置过的话,点击下图中的按钮,填写你想执行的指令。这里的指令其实就是你在终端中运行的指令,比如执行一个脚本文件,或者执行一些linux内置的命令等等

我个人的习惯是在部署的文件夹下配置启动脚本,start.shstop.sh

# start.sh
nohup java -jar zh-sensor-protocol.jar >/dev/null 2>&1 &
echo "服务启动成功"
# stop.sh
PID=$(ps -ef | grep zh-sensor-protocol.jar | grep -v grep | awk '{ print $2 }')
if [ -z "$PID" ]
then
echo Application is already stopped
else
echo kill -9 $PID
kill -9 $PID
fi

如此一来,我会在IDEA中配置如下命令

2.6 Before launch

这一步指的是在部署动作正式启动之前,你想执行什么操作。还记得之前我们选择的上传的文件吗,这一步是得到那个文件的关键了。

我们点击+按钮,选择Run Maven Goal选项

然后配置如下信息,因为我们是部署Spring Boot项目所以才选择的Maven选项,其他项目部署灵活选择即可。

到此为止,我们就已经配置完了,接下来就行部署。

3. 开始部署

部署结果



大功告成!


完。

IDEA一键部署SpringBoot项目到服务器的更多相关文章

  1. 使用Cloud Toolkit部署SpringBoot项目到服务器

    由于我们经常发布项目到测试服,在测试服上调试一些本地无法调试的东西,所以出现了各种打包,然后上传.启动,时间都耗费在这无聊的事情上面了,偶然在网上看到IntelliJ IDEA有 Cloud Tool ...

  2. 部署SpringBoot项目jar包到云服务器

    前言 做安卓开发也有三四年了,但是对网络这块什么http.tcp/ip之类的一直不理解.并且想自己做一些小项目练练手的时候,数据库直接存在apk里总不是滋味,所以这次站在安卓开发的角度尝试着做一做简单 ...

  3. Docker快速上手之部署SpringBoot项目

    Docker是基于Go语言实现的云开源项目. Docker的主要目标是“Build,Ship and Run Any App,Anywhere”,也就是通过对应用组件的封装.分发.部署.运行等生命周期 ...

  4. windows一键部署java项目

    windows一键部署java项目 因为公司需求,要在windows的环境上做一键部署启动java项目,同时还要支持从安装界面动态修改配置文件的IP地址.就像安装软件一样将jdk,tomcat,mys ...

  5. SpringBoot入门教程(二)CentOS部署SpringBoot项目从0到1

    在之前的博文<详解intellij idea搭建SpringBoot>介绍了idea搭建SpringBoot的详细过程, 并在<CentOS安装Tomcat>中介绍了Tomca ...

  6. docker部署springboot项目

    本文介绍一下docker如何部署springboot项目. 前提条件: 1.可以运行jar包的环境 2.机器上已经安装了docker 3.准备部署的springboot的jar包 4.Dockerfi ...

  7. mac和linux下使用Docker,部署SpringBoot项目到docker

    主要是看一下如何在linux及mac上安装docker,创建docker镜像,部署SpringBoot项目到docker,并借助于DaoCloud进行docker镜像下载加速等. 我用的电脑是mac, ...

  8. docker开启2376端口CA认证及IDEA中一键部署docker项目

    嘿,大家好,今天更新的内容是docker开启2376端口CA认证及IDEA中一键部署docker项目... 先看效果 我们可以通过idea一键部署docker项目,还以通过idea的控制台实时查看容器 ...

  9. Jenkins部署springboot项目

    记录jenkins如何部署springboot项目(jar类型的) 一.首先需要先配置好jenkins的基本配置(jdk.maven--),可在系统管理-->>全局工具配置中进行配置. 配 ...

随机推荐

  1. 转雅虎web前端网站优化 34条军规

    雅虎给出了优化网站加载速度的34条法则(包括Yslow规则22条) 详细说明,下载转发 ponytail 的译文 1.Minimize HTTP Requests 减少HTTP请求 图片.css.sc ...

  2. Linux系统下,Redis的安装与启动

    1.安装Redis之前,我们先介绍下Redis: (1)Redis是什么?都有哪些特点? 概念:Redis (REmote DIctionary Server) 是用 C 语言开发的一个开源的高性能键 ...

  3. Java实现抽奖模块的相关分享

    Java实现抽奖模块的相关分享 最近进行的项目中,有个抽奖的需求,今天就把相关代码给大家分享一下. 一.DAO层 /** * 获取奖品列表 * @param systemVersion 手机系统版本( ...

  4. 【Java】Eclipse常用快捷键

    Eclipse常用快捷键 * 1.补全代码的声明:alt + / * 2.快速修复: ctrl + 1 * 3.批量导包:ctrl + shift + o * 4.使用单行注释:ctrl + / * ...

  5. 2021最新Termux安装Metasploit

    前言 因为某些脚本小子的用Termux搞破坏,所以Termux软件源移除了对Metasploit的支持,所以就不能直接用pkg和apt直接安装了. 但是不用担心,noob-hacker大大写了一个工具 ...

  6. 【解决了一个小问题】golang samara的kafka客户端中使用错误版本号导致初始化失败

    发现在如下代码中存储kafka生产者初始化失败: config.Version = sarama.V0_10_2_1 //V2_2_0_0 producer, err := sarama.NewSyn ...

  7. IPV4地址,子网掩码,子网划分

    转载自https://blog.csdn.net/qq_45108415/article/details/114179407

  8. Spring Boot 3.0.0 发布第一个里程碑版本M1,你的 Java 升到17 了吗?

    2022年1月20日,Spring官方发布了Spring Boot 3.0.0的第一个里程碑版本M1. 下面一起来来看看Spring Boot 3.0.0 M1版本都有哪些重大变化: Java基线从 ...

  9. 学习AJAX必知必会(1)~Ajax

    一.ajax(Asynchronous JavaScript And XML,即异步的 JS 和 XML) 1.通过 AJAX 可以在浏览器中向服务器发送异步请求实现无刷新获取数据. 2.优势:无刷新 ...

  10. golang中字符串的底层实现原理和常见功能

    1. 字符串的底层实现原理 package main import ( "fmt" "strconv" "unicode/utf8" ) f ...