IDEA中WEB项目结构和Artifacts设置

公司的WEB项目结构一直比较随意,没有统一的规范,新增项目也是直接用旧的项目文件夹拷贝过去修改,时间长了以后项目文件结构混乱,研究了半天终于找到了(可能)正确的目录结构设置,能够直接输出正确结构的Artifacts可直接部署。

I.开发工具

IDEA

II.项目结构

【更新】maven推荐目录结构:

  |-->pom.xml           ---->pom文件
  |-->src               ---->源码包:
  	   |-->main           ---->源码:
            |-->java           ---->java源码
            |-->resources      ---->配置文件
            |-->webapp    ---->app应用文件
                 |-->WEB-INF
                      |-->web.xml
                 |-->index.jsp
       |-->test           ---->测试源码:
            |-->java           ---->java测试源码
            |-->resources      ---->测试配置文件

我的目录结构,就这样吧懒得改了。。

项目文件夹
├─lib
├─src
│  └─main
│      ├─java
│      └─resources
└─web
    └─WEB-INF
            web.xml

III.设置文件夹的类型

打开IDEA顶部菜单栏 - File - Project Structure

设置Project

Project compiler output: 标识的是整个项目的生产环境资源输出目录,正确设置以后会包括编译后的class文件、lib文件、前端文件等。
输出目录文件夹名字随意:项目文件夹\target\
在这里插入图片描述

设置Modules

  • Sources
    src目录为Sourcessources目录为Resources(如果有)
    在这里插入图片描述

  • Paths
    Compiler output选择lnherit project compile output path(通常是默认选中)
    在这里插入图片描述

设置Libraries

选择“+” - Java - 选择lib文件夹即可
在这里插入图片描述

设置Facets

src\main\web\WEB-INF\web.xml如果不存在,需要手动创建。
选择“+” - Web - 双击选择当前项目
在这里插入图片描述
Deployment Descriptors选择src\main\web\WEB-INF\web.xml文件
Web Resource Directories选择src\main\web目录

在这里插入图片描述
项目中的前端文件:HTML、CSS、JS、JSP等放在WEB目录下即可。

设置Artifacts

根据各自项目部署方式自行选择

选择“+” - Web Application: Exploded - From Modules… - 选择当前项目即可。
在这里插入图片描述
Name: 指定打包输出目录的名称。
Type: 指定打包方式,我们公司使用的是Web Application: Exploded
Output directory: 会自动指向到target\artifacts下,可以自行设置项目打包输出目录。

IV.打包发布

把java文件、前端文件都准备好了以后,选择IDEA顶部工具栏 - Build - Build Artifacts…,指定的输出目录下会生成项目文件,包含前端文件、包含lib和class类文件的WEB-INF。
直接用这个 _war_exploded 文件夹部署到服务器上即可。
在这里插入图片描述

遇到的坑

lib包在WEB-INF下,一次部署项目时有个jar包识别不到,部署失败,把lib文件夹拷贝一份放到WEB-INF上一级目录,就是项目根目录下才解决了问题部署成功。

  • 3
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值