首页 > 其他分享 >2024-11-25《Vscode热部署》

2024-11-25《Vscode热部署》

时间:2024-12-29 14:55:52浏览次数:1  
标签:11 src java Vscode 2024 部署 webapp main maven

VsCode配置Javaweb热部署(Deploy)

 

  最近又开始使用VsCode来进行web开发,但是每次都需要package一下项目再放到Tomcat下面太繁琐了,就想着能不能像IDEA一样可以进行热部署,经过不懈百度后终于发现了解决方法。首先需要以下三个插件:

image-20221028164047290

  首先我们要去创建一个webapp项目,具体的VsCode创建maven-webapp项目大家可以百度,教程有很多,创建好web项目之后我们有两种选择,一种是在全局设置,也就是在设置里进行配置,另一种就是在工作区设置,具体使用起来没啥区别,我比较懒,所以我就直接在全局设置里设置了,如果你想要在工作区设置的话那就ctrl+shift+P,搜索settings,然后将下列代码放进去,全区配置也是一样的:

  "java.configuration.maven.userSettings":"D:\\Learning\\Environments\\Maven\\conf\\settings.xml",
  "maven.terminal.useJavaHome": true,
  "maven.terminal.customEnv": [
  {
  "environmentVariable": "JAVA_HOME",
  "value": "D:\\Learning\\Environments\\JDK\\JDK17"
  }
  ],
  "java.configuration.maven.globalSettings":"D:\\Learning\\Environments\\Maven\\conf\\settings.xml",
  "maven.executable.path": "D:\\Learning\\Environments\\Maven\\bin\\mvn.cmd",
  "maven.settingsFile": "D:\\Learning\\Environments\\Maven\\conf\\settings.xml",
  "java.maven.downloadSources": true,
  "maven.executable.options": "-DarchetypeCatalog=internal",
  //关闭自动编译
  "java.autobuild.enabled": false,
  //关闭debug前强制编译
  "java.debug.settings.forceBuildBeforeLaunch": false,
  //maven、gradle的配置文件变更后自动更新
  "java.configuration.updateBuildConfiguration": "automatic",
  //java源文件路径
  //使用Deploy插件来进行热部署时所需要的配置信息
  "deploy": {
  "packages": [
  {
  "name": "前端",
  "description": "webapp里面的所有文件",
  "files": [
  "src/main/webapp/*",
  "src/main/webapp/*/*",
  "src/main/webapp/*.*",
  "src/main/webapp/*/*.*",
  "src/main/webapp/*/*/*.*",
  "src/main/webapp/*/*/*/*.*",
  "src/main/webapp/*/*/*/*/*.*",
  "src/main/webapp/*/*/*/*/*",
  "src/main/webapp/*/*/*/*/*/*.*",
  ],
  "exclude": [
  "src/main/webapp/test/*"
  ],
  "deployOnSave": true,
  "useTargetList": true,
  "button": {
  "text": "热部署",
  "tooltip": "点击这里将前端部署到hotsite",
  "targets": [
  "HOTSITE"
  ]
  },
  }
  ],
  "targets": [
  {
  "type": "local",
  "name": "HOTSITE",
  "description": "A local folder",
  "dir": "target/lht/",
  "mappings": [
  {
  "source": "src/main/webapp",
  "isRegEx": false,
  "target": "/"
  }
  ]
  }
  ]
  },
  "java.project.sourcePaths": [
  "src/main/java",
  "src/test/java",
  ],

  上面target后面的名字就是我们热部署的文件夹,其他的我们就对应好我们的,我们编译好的class文件都会放在web-inf目录下,然后我们还需要在maven项目的pom.xml文件里配置一下我的编译输出目录:

  <sourceDirectory>src/main/java</sourceDirectory>
  <resources>
  <resource>
  <directory>src/main/resources</directory>
  <includes>
  <include>db.properties</include>
  </includes>
  <filtering>true</filtering>
  </resource>
  </resources>
  <outputDirectory>${basedir}/target/lht/WEB-INF/classes</outputDirectory>

  要放在<build></build>之间,然后我们打开命名面板,选择maven,选择compile,然后编译好了之后我们再去看就会发现已经编译到我们指定的目录下了:

image-20221028170911792

  然后左下角打开我们的server,开始配置Tomcat,第一步选择no,在本地选择到Tomcat的安装目录,然后无脑finish就可以了。

image-20221028171027032

image-20221028171040242

image-20221028171057521

image-20221028171125060

  然后点击这个add deployment,选择exploded将我们自定义的名字的那个热部署的文件夹选择到,然后选择no,最后打开Tomcat服务,点击热部署按钮(在左下方有这三个汉字,直接点击即可)。最后就是将我们的服务部署到Tomcat上,点击pulish server,然后就可以开始浏览了,每次当我们Ctrl+s的时候,就会自动部署到Tomcat,到时候我们直接点击刷新就好了。

image-20221028171313794

image-20221028171308583

image-20221028171410680

image-20221028171450900

  最后就是如果你想快速的打开网页,我们可以点击这个server action,然后选择show in browser,选择带有我们自定义文件夹那个链接即可。

image-20221028171746965

image-20221028171754041

image-20221028171812663

标签:11,src,java,Vscode,2024,部署,webapp,main,maven
From: https://www.cnblogs.com/dmx-03/p/18638818

相关文章

  • 2024-11-28《关于mybatis创建的mapper映射路径不对导致的系列报错》
    关于mybatis创建的mapper映射路径不对导致的系列报错 今天在写mybatis项目的时候,使用注解发现无法使用别名,添加ResultMap的时候直接报错显示无法解析。经过百度了好久也是成功的发现了问题的所在,就是这个:这个路径创建的时候我以为创建的是分级目录,实际上创建成为了com.inn......
  • 2024-11-27《架构漫谈读后感》
    架构漫谈读后感 首先,最近在课上老师推荐我们阅读王概凯老师的架构漫谈连载博客,通过详细的阅读,我确实收获颇丰。首先就是对于架构是什么,架构解决的是什么有了一个深入的了解。第一,什么架构呢?王概凯老师认为他没有一个确切的定义,在软件行业,每个人都有自己的理解,所以一百个人心......
  • 2024-11-29《axios获取不到response返回的响应的解决方法》
    axios获取不到response返回的响应的解决方法 今天在用mybatis+vue+axios写登录界面的时候,发现用户名还有密码的数据都能够传输到servlet里,但是当servlet对html界面进行相应的时候,axios却收不到消息,经过长时间的排查后也没有发现问题,终于在今晚的百度下发现了结果,上原文:解决方......
  • 2024-12-3《利用ffmpeg推流到rtsp,再利用jmpeg在html界面上显示的解决办法》
    利用ffmpeg推流到rtsp,再利用jmpeg在html界面上显示的解决办法  目录需求在python代码里推流到rtsphtml里播放rtsp视频流 需求最近在百度飞桨上训练了一个摔倒识别的模型,用的PaddleDetection这个模型,训练好以后我部署到了Windows,但是我看大多数人都是部署到了......
  • 2024-12-4《大数据指令汇总》
    大数据指令汇总  目录使用Finalshell作为连接机器界面命令汇总针对全部会话的命令Zookeeper集群启动:Zookeeper集群状态:Zookeeper集群关闭:针对当前会话的命令Hadoop启动:Hadoop关闭:hive1启动:hive2启动:beeline启动:beeline登录(账户是root,密码为空):hbase......
  • 2024-12-05《关于pip总是下载到基础环境不下载到虚拟环境》
    关于pip总是下载到基础环境不下载到虚拟环境 今天使用pip安装包报错了,使用piplist查询了一下发现竟然默认安装在了基础环境里,我激活了conda的虚拟环境再运行pip依然是安装在了基础环境里,百度后发现解决方法为去除掉系统环境变量里的PYTHONHOME然后使用虚拟环境变量里的虚拟......
  • 2024-12-06《WebApplication配置》
    WebApplication是用于配置HTTP管道和路由的web应用程序,接来下我将一一拆解它的组成。//////ThewebapplicationusedtoconfiguretheHTTPpipeline,androutes.///[DebuggerDisplay("{DebuggerToString(),nq}")][DebuggerTypeProxy(typeof(WebApplication.WebApplicatio......
  • 11.7 图像增强与动漫化一
    packageorg.example;importorg.json.JSONObject;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;importjava.net.HttpURLConnection;importjava.net.URL;importjava.util.logging.Level;importjava.util.loggin......
  • 2024-11-15《继续c#学习-多态性》
    多态性静态多态性函数重载  函数重载就是一个函数可以通过传入不同的参数来进行不同的运算,例如: usingSystem; namespacePolymorphismApplication { publicclassTestData { publicintAdd(inta,intb,intc) { returna+......
  • 2024-11-14《继续c#学习》
     今天进行了C#的学习,继续了解C#的相关知识: 目录继承多态性静态多态性函数重载运算符重载动态多态性运算符重载接口 继承  继承就是基类派生出去多种类,就好比狗是哺乳动物,狗是派生类,哺乳动物是基类。  下面是一个简单的继承: usingSystem;......