JavaWeb 使用 vscode 开发日志记录

早先进行 JavaWeb 开发使用的是 IDEA,但后续使用中感觉太笨重了,本着为 vscode “宇宙第一IDE” 正名,最近探索了使用 vscode 进行 JavaWeb 开发。

1 开发环境配置

开发环境配置参考了 Dr.F.Arthur 大佬的Blog,按着大佬的教程也没有遇到什么大坑,很顺利的就完成了,在这里不再多说,链接:

VsCode配置JavaWeb(最新)_Dr.F.Arthur的博客-优快云博客_vscode运行javaweb我个人是很喜欢VsCode的,开源免费、功能全面。所以为了方便,我把我几乎所有的运行都集成到了VsCode上来,JavaWeb也不例外。https://blog.youkuaiyun.com/qq_56051596/article/details/126014977

2 开发日志记录

2.1 Maven-archetype-webapp 文件结构目录

官方提供的文件结构介绍:Maven – Introduction to the Standard Directory Layout

但里面也没有具体说明 js, css, jsp, img, jar 这些东西放在哪,这里以1.4版本的 maven-archetype-webapp 模板开发的名为 webgis 的项目为例,介绍一下我采用的文件结构:

目录说明
webgis/lib放 .jar 文件,打包后会存放到 target/webgis/WEB-INF/lib 下
webgis/src/main/java

放源码,打包后会存放到 target/webgis/WEB-INF/classes 下

webgis/src/main/webapp/jsp

放 .jsp 文件,打包后会存放到 target/webgis/jsp 下

webgis/src/main/webapp/js放 .js 文件,打包后会存放到 target/webgis/js 下
webgis/src/main/webapp/css放 .css 文件,打包后会存放到 target/webgis/css 下
webgis/src/main/webapp/img放图片文件,打包后会存放到 target/webgis/img 下

2.2 Maven 导入本地 jar 包并参与构建 war 文件

在其它 Java 项目开发中,如果要引入 jar 文件可以在 vscode 的 “Configure Classpath" 配置中导入,但是,当你使用 maven 的模板创建项目后,你会发现,”Configure Classpath" 无法使用:

所以这个时候就只能在 pom.xml 中修改,引入本地 jar 包主要添加以下代码:

    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>fastjson</artifactId>
      <version>1.2.47</version>
      <scope>system</scope>
      <systemPath>${project.basedir}/lib/fastjson-1.2.47.jar</systemPath>
    </dependency>

 ​​​​​​其中 <groupId> 和 <artifactId> 会影响在 java 文件的引入名称,如在 java 文件中引入上面的包:

import com.alibaba.fastjson.*;

引入的包在使用 maven 打包时是无法打包到 war 文件中的,因此会出现文件不能用的情况,这里还需要在 pom.xml 中添加以下代码,会在 maven 打包时把 webgis/lib 下的所有 jar 打包到 target/webgis/WEB-INF/lib 下:

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-war-plugin</artifactId>
          <configuration>
            <webResources>
              <resource>
                <directory>${project.basedir}/lib</directory>
                <targetPath>WEB-INF/lib</targetPath>
                <includes>
                  <include>**/*.jar</include>
                </includes>
              </resource>
            </webResources>
          </configuration>
        </plugin>

值得一提的小 trick: 在使用 maven 更新 war 包的时候,最好先使用 clean 命令清掉上一次打包的所有东西,然后再使用 package 命令打包。

此外,在 vscode 右下角的相应服务器上右键 "Debug Server" 就可以直接在源码中打断点调试了,非常方便有木有!

2.3 Window 环境下 Tomcat 无法正常关闭

在使用vscode的 "Community Server Connectors" 插件启用 Tomcat 时,有时会莫名出现服务器在插件中显示关闭但是却依旧运行,此时可以通过以下方法来关闭服务器(也可以直接运行 shutdown.bat ,我后来才想起来这么简单的方法,笑哭)。

① 在cmd中查看8081有没有被占用,找出占用8081端口的进程

netstat -ano | findstr “8081”

② 输入命令后,发现是其PID为 17284 的占用了8081端口

③ 任务管理器-详细信息-右键结束进程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值