前提工作:

  1. 修改settings.xml,改为aliyun镜像;
  2. 在idea设置中修改maven的目录、settings、repository;

步骤:

  1. idea里面创建一个maven-webapp项目,取好项目名称等;
  2. idea maven 私服 idea maven war_热部署

  3. 完善目录
  4. idea maven 私服 idea maven war_idea maven 私服_02

idea maven 私服 idea maven war_intellij-idea_03

  1. 添加tomcat
    点击右上方



    问题:
  • 为什么要选择war exploded?

war模式:将WEB工程以包的形式上传到服务器 ;
war exploded模式:将WEB工程以当前文件夹的位置关系上传到服务器;

war:先打包成war包,再把该war包部署到服务器上 war
exploded:直接把文件夹、class文件等等移到Tomcat上进行部署。因此这种方式支持热部署,一般在开发的时候都是使用这种模式。

什么是热部署?

热部署就是正在运行状态的应用,修改了他的源码之后,在不重新启动的情况下能够自动把增量内容编译并部署到服务器上,使得修改立即生效。
热部署为了解决的问题有两个,
一是在开发的时候,修改代码后不需要重启应用就能看到效果,大大提升开发效率;
二是生产上运行的程序,可以在不停止运行的情况下进行升级,不影响用户使用。

需要作如下修改:

idea maven 私服 idea maven war_idea maven 私服_04

Idea热部署并非绝对实时, 还是会有延时的,假如你手速快的话可能会出现改了并没有马上生效。
稍微等一会看到开发工具左下角会有一个class reload的提示,说明已经热部署完成了。

  • 为什么Application context 不要后面的war-exploded?
    Application context:应用上下文。

localhost:8080/projectName或者是localhost:8080就是我们平常所说的应用上下文,项目中的路径名都是相对于这个应用上下文来说的

IDEA默认的访问路径是:http://localhost:8080/访问的资源名称
在idea下开发的时候,有时候我们可能需要让访问路径带上项目名,但是idea默认是为每个项目单独配置tomcat的

所以应该看个人喜好,你想加上项目名那就修改,你要是想简单点,就把application context的内容删的只剩下/

  1. 启动tomcat

基本的就搭好了。