简介:

在项目中时常需要部署项目,在程序员的工作中大部分时间,不是再解决bug,就是在部署项目的路上,有得时候各种各样的环境,部署时间就占用了一大半。

解决方案:

1.开启tomcat的远程部署,修改服务器上的配置文件,使用idea的tomcat插件实现远程部署项目。

2.使用idea中插件docker,创建Dockerfile 使用idea为我们提供好的一键化配置,也可以实现,在docker运行项目,实现一键部署。

3.使用jenkins自动部署集成工具,来实现部署,例如:代码提交到gitLab,自动触发,编译项目,将编译好的内容部署到指定目录。

今天我就为大家来讲解第一种方案,使用一键idea远程部署到tomcat中启动项目。

一 . 修改服务器上的tomcat配置

1 . 添加,修改tomat/conf/tomcat-users.xml

<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<user username="yourname" password="yourpassword" roles="manager-gui,manager-script"/>

2 . 修改部署的ip项目:tomcat/webapps/manager/META-INF/context.xml

将:

<Context antiResourceLocking="false" privileged="true" ><Valve className="org.apache.catalina.valves.RemoteAddrValve"allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /><Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>

修改为:

<Context antiResourceLocking="false" privileged="true" ><Valve className="org.apache.catalina.valves.RemoteAddrValve"allow="^.*$" /><Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>

二 . 打开maven下的conf下的settings.xml

修改配置如下:

  <mirrors><!-- mirror| Specifies a repository mirror site to use instead of a given repository. The repository that| this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used| for inheritance and direct lookup purposes, and must be unique across the set of mirrors.|<mirror><id>mirrorId</id><mirrorOf>repositoryId</mirrorOf><name>Human Readable Name for this Mirror.</name><url>http://my.repository.com/repo/path</url></mirror>--><!--有tomcat8插件的仓库--><mirror><id>artifacts</id><name>artifacts maven</name><url>https://artifacts.alfresco.com/nexus/content/groups/public</url><mirrorOf>*</mirrorOf></mirror><mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOf>central</mirrorOf>
</mirror>

说明:

因为maven远程仓库中没有tomcat8的插件,所以要配置artifacts仓库!

三 . 修改maven项目中pom.xml

添加如下配置:

1 . 在pom文件中添加从什么地方下载插件配置

<!--这是配置Maven从什么地方下载插件构件(Maven的所有实际行为都由其插件完成)-->
<pluginRepositories><pluginRepository><id>alfresco-public</id><url>https://artifacts.alfresco.com/nexus/content/groups/public</url></pluginRepository><pluginRepository><id>alfresco-public-snapshots</id><url>https://artifacts.alfresco.com/nexus/content/groups/public-snapshots</url><snapshots><enabled>true</enabled><updatePolicy>daily</updatePolicy></snapshots></pluginRepository>
</pluginRepositories>

2 . 配置插件

<!-- 配置Tomcat8插件 --><plugin><groupId>org.apache.tomcat.maven</groupId><artifactId>tomcat8-maven-plugin</artifactId><version>3.0-r1655215</version><configuration><!-- 将IP改为主机IP,其他不变 --><url>http://Ip:8080/manager/text</url><!-- 项目名称,访问路径为  localhost:8080/projectName --><!-- 当设置为 / 时, 即为 localhost:8080/, 但是注意会覆盖ROOT项目 --><path>/myproject</path><!-- tomcat账号密码 --><username>yourname</username><password>yourpassword</password></configuration></plugin>

四 . 部署项目到tomcat中

第一次部署点击:tomcat8:deploy

之后tomcat下webapps有项目了使用:tomcat8:redeploy

出现code 0 部署成功!

可以去服务器上webapps目录中确认,或是获取访问项目地址~到这个就大功告成了!

技术支持:高岳峰,闫宇峰,施凯雷,杨珂

他的个人博客地址:http://120.78.93.197/

这是我的公众号 有最新的it咨询,和个人工作的记录:

这是我的个人微信遇到问题欢迎,提问:

最后加上高质量的淘宝店:如有质量问题随时滴滴我,童叟无欺!

idea插件tomcat8-maven-plugin远程部署项目~相关推荐

  1. maven+tomcat8.0+eclipse远程部署项目

    2019独角兽企业重金招聘Python工程师标准>>> 1.修改pom.xml <plugin><!-- 依赖tomcat的maven插件,我的tomcat是8.0 ...

  2. git maven 一键部署_Jenkins Git Maven搭建自动化部署项目环境 邮件通知

    简介 折腾了两个晚上,趁着今晚比较有空,把jenkins+git+maven搭建自动化部署项目环境搭建的过程记录一下,这里我把github作为git的远程仓库(https://github.com/j ...

  3. 使用IntelliJ IDEA 集成阿里提供的 Alibaba Cloud Toolkit插件,实现自动化远程部署Java项目(jar包,war包两种方式)

    打开IntelliJ IDEA编译器,点击文件==>点击设置(setting) 在设置页面点击插件(英文应该是 Plugins ,对IntelliJ IDEA汉化感兴趣的同学可以在这个页面搜索 ...

  4. 解放双手 | Jenkins + gitlab + maven 自动打包部署项目

    前言 记录 Jenkins + gitlab + maven 自动打包部署后端项目详细过程! 需求背景 不会偷懒的程序员不是好码农,传统的项目部署,有时候采用本地手动打包,再通过ssh传到服务器部署运 ...

  5. linux maven自动构建,Centos7.3+Jenkins+Git+Maven 自动化构建部署项目

    第一步 禁止 SELINUX 访问控制 修改配置之前先备份(良好习惯) sudo cp /etc/selinux/config /etc/selinux/config.bak 备份后,修改selinu ...

  6. 图文详解远程部署ASP.NET MVC 5项目

    图文详解远程部署ASP.NET MVC 5项目 原文:图文详解远程部署ASP.NET MVC 5项目 话外篇: 由于感觉自己的机器比较慢,配置不好,所以最近想把之前的项目部署到实验室的服务器上,但是由 ...

  7. IntelliJ IDEA2017创建web工程并实现远程部署tomcat

    利用IDEA远程部署项目到Tomcat服务器 原来在eclipse下将项目导出为war包后往往需要将war包上传到服务器,进行部署,但IDEA提供了方便易用的远程部署方案,下面一起来看看把. 远程部署 ...

  8. 在WIN7中用maven将spring boot项目远程部署到Linux虚拟机的docker容器

    题目信息量很大,蕴含了以下信息: 1.当前开发环境是WIN7 2.docker容器在Linux虚拟机中 3.在WIN7里将直接将spring boot项目发布到该远程docker 4.发布工具是mav ...

  9. 关于Maven打包Java Web项目以及热部署插件Jrebel的使用

    Java Web/Eclipse/Maven/Tomcat 最近有个新项目是java web项目,记录一下,可能比较乱.虽然没接触过Java,但是eclipse还是用过的 初识项目 同事说,项目是ma ...

最新文章

  1. java收银台程序gui_javaSE小项目---简易收银台
  2. xamarin的破解安装
  3. 每日一皮:很多时候你和Bug就像这样!
  4. XSLT 2.0 in .NET
  5. Redis简介和Redis Template用法整理
  6. 树莓派安装screen保证SSH断开 任务不中断
  7. powershell 变量_极客学院:学习PowerShell变量,输入和输出
  8. js遍历json数组给html td赋值,JS实现给json数组动态赋值的方法示例
  9. mybatis返回map键值对_mybatis返回map key怎么指定
  10. 【鲲鹏来了】华为云鲲鹏弹性云服务器 KC1一文全掌握(2)
  11. 安卓apk反编译教程
  12. java 用word模板打标签,并插入图片 动态生成word
  13. 在Win10下安装Anaconda3,“开始”菜单目录下只有Anconda prompt怎么办
  14. 2023.4.24 考研单词背诵+默写
  15. c语言count的作用,C语言中count是什么意思?
  16. 李炎恢ecshop2.7.2安装教程与PHP5.5x不兼容的处理方法
  17. 距阵乘以一个未知距阵得单位矩阵 怎么算_一个人可以 DIY 出什么高逼格的东西?...
  18. 日期时间选择器 DatePicker
  19. python-opencv 眼球跟踪(已开源)
  20. python爬取股票平均成本怎么算_Python-多个股票的投资组合分析,对,进行

热门文章

  1. STE:华南农大曾振灵/熊文广-猪粪介导抗生素耐药基因向农场工人和周边环境传播...
  2. QIIME 2教程. 24Python命令行模式Artifact API(2020.11)
  3. 科学养猪的真正奥义,培养拯救人类的医学英雄
  4. 学习全基因组测序数据分析1:测序技术
  5. python代码获取每一天在一年中出现的次数(星期)
  6. 多分类学习方法、One vs. Rest、One vs. One、Many vs. Many、多输出分类
  7. Mean Shift+聚类
  8. ISLR_StatisticalLearning
  9. GATB的使用小例子test.cpp
  10. 用php计算自由落体,js模仿物理中的自由落体现象