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. 聊聊同步、异步、阻塞、非阻塞以及IO模型

    前言 在使用Netty改造手写RPC框架的时候,需要给大家介绍一些相关的知识,这样很多东西大家就可以看明白了,手写RPC是一个支线任务,后续重点仍然是Kubernetes相关内容. 阻塞与非阻塞 同步 ...

  2. Kube-OVN 1.2.0发布,携手社区成员打造高性能容器网络

    Kube-OVN 1.2.0 新版本如期而至,支持 Vlan 和 OVS-DPDK 两种类型的高性能网络接口.本次发布得益于社区的壮大,感谢Intel爱尔兰开发团队与锐捷网络开发团队持续积极参与Kub ...

  3. Android官方文档翻译 八 2.1Setting Up the Action Bar

    Setting Up the Action Bar 建立Action Bar This lesson teaches you to 这节课教给你 Support Android 3.0 and Abo ...

  4. C++ 从&到&&

    人类发展史,就是不断挖坑.填坑的过程. 语言发展史也是如此! 任何一门设计合理的语言,给你的限制或提供的什么特性,都不是没有代价的. C的指针 指针:pointer 指针的思想起源于汇编.指针思想是编 ...

  5. [STM32F10x] 利用定时器测量脉冲宽度

    硬件:STM32F103C8T6 平台: ARM-MDk V5.11 前面一篇文章讲过如何利用定时器测量信号的频率(见[STM32F10x] 利用定时器测量频率),使用的是定时器的捕获/比较单元(Ca ...

  6. 【刷题-LeetCode】307. Range Sum Query - Mutable

    Range Sum Query - Mutable Given an integer array nums, find the sum of the elements between indices ...

  7. 计算机视觉3-> yolov5目标检测1 |从入门到出土

    本来就想着是对自己第一次跑yolov5的coco128的一个记录,没想到现在准备总结一下的时候,一方面是继续学习了一些,另一方面是学长的一些任务的要求,挖出了更多的东西,所以把名字改为了"从 ...

  8. 论文解读第三代GCN《 Deep Embedding for CUnsupervisedlustering Analysis》

    Paper Information Titlel:<Semi-Supervised Classification with Graph Convolutional Networks>Aut ...

  9. 学习Java第11天

    今天所做的工作: 敲代码,按照教材进度,我已经"学完了",用引号引起来. 明天工作安排: 敲代码 所遇到的困难及解决方法: 虽然是"学完了",但真正写起来还是有 ...

  10. Spring @SessionAttributes注解 @ModelAttribute注解

    一.@SessionAttribute详解 如果多个请求之间需要共享数据,就可以使用@SessionAttribute. 配置的方法: 在控制器类上标注@SessionAttribute. 配置需要共 ...