阿毛
It's me !
想你所想

IDEA构建“传统JavaWeb项目”

该文主要阐述,如何在IDEA中构建起JavaWeb项目,这里以我的一个开源项目为例。

关于这个项目的信息,详见readme。这是我和我一个本科期间同学(前端大佬)一起完成的。我主要负责项目维护与该站点运维。

这个项目是一个前后端不完全分离的项目,虽然整体Http+JSON,但前后端是一块部署的  :evil: 。同时项目是一个纯servlet项目,很常见的JavaWeb项目结构。所以直接拿此项目为例,旨在让你快速在IDEA中部署构建起来。(原先项目是基于MyEclipse构建的,去年搞过一次IDEA版的https://blog.csdn.net/H_233/article/details/87711791,这次重新又搞了下,理解比上次更更透彻些了。)
前提:先拉代码,本文基于release1.0阐述。


在项目下,打开 project setting

https://file.blog.humh.cn/2020/04/image-17.png
project setting

1、Project

https://file.blog.humh.cn/2020/04/image-18-1024x473.png
project

如上图所示,分别为项目名sdk源(这里采用自己安装的jdk1.8,IDEA中直接配置的全局)、指定java语言level(与采用的jdk版本对应即可)以及 项目编译目录(java src源码编译后的class目录,遵循java web项目规范,WEB-INF下的classes即可)

2、Modules

2.1 Sources

https://file.blog.humh.cn/2020/04/image-19-1024x613.png
Sources

如上图所示,静态资源目录Excluded,src为源码目录,其他的 .idea 和 out 不用管。

2.2 Paths

https://file.blog.humh.cn/2020/04/image-20-1024x614.png
Paths

如上图配置即可,当然你也可以选择第一项,这里也想额外指定下test(单元测试,虽然还没有。。hhh)编译的路径。

2.3 Framework Web

https://file.blog.humh.cn/2020/04/image-21.png
创建Web模板

先创建一个Framework模板,这里用“Web”(IDEA中对Java Web的项目结构模板,用于快速集成项目资源,构建部署至容器中)

https://file.blog.humh.cn/2020/04/image-22-1024x610.png
Web模板配置

如上图配置即可,Web Module Deployment Descriptor 为 web.xml 的路径(web.xml在WEB-INF中)。
Web Resource Directories 配置的目的是将项目的不同目录与最终部署至容器中的包,从结构上管理起来,左边为目录的实际绝对路径,右边为部署包中的相对路径。如第一项,我指定项目中css目录为最终部署war包中的css目录,在下面的Artifacts配置完后,构建时,IDEA会自动根据你配置的规则,将项目css目录内容copy至war包的css目录中。从整个过程来看,这也不能想象,上图的Web界面就是一个模板配置!
Source Roots 就是源码路径了,勾上即可。

3、Libraries

https://file.blog.humh.cn/2020/04/image-23.png
引入项目依赖的jar包

选择上图中的Java后,在弹框中选择你的jar包目录,该示例就是lib目录(注意要展开lib目录,全选其中的jar包,然后导入即可)最终的效果如下图所示:

https://file.blog.humh.cn/2020/04/image-24-1024x599.png

4、Facets

Facets 其实就是 2.3 的内容,2.3 如果配置成功的话,这里就会直接显示出来,不用再做配置了。

5、Dependencies

这里需要回过头,配置Modules中的 Dependencies

https://file.blog.humh.cn/2020/04/image-25-1024x598.png
https://file.blog.humh.cn/2020/04/image-26.png

按上面两张图,依次操作即可。图二中的lib就是我们刚刚在3、Libraries中配置后内容。

6、Artifacts

https://file.blog.humh.cn/2020/04/image-27.png
新建artifacts部署包

先按上图所示,选择Web Application,创建一个生成war的模板,然后再进行下面配置。

https://file.blog.humh.cn/2020/04/image-28-1024x455.png

配置Output directory路径,该项是指定war包的内容来源存放路径。然后双击右边的Web facet resources(这就是2.3配置的Web,这里会根据Web模板来社生成指定内容至out目录,然后打成war包,部署至容器中)即可。

剩下的Platform Settings不用管。


7、部署项目至tomcat容器

7.1 在IDEA中配置tomcat

https://file.blog.humh.cn/2020/04/image-29.png
https://file.blog.humh.cn/2020/04/image-30.png

按照上述两步,创建一个本地tomcat容器,进入下面的配置界面:

https://file.blog.humh.cn/2020/04/image-31-1024x644.png

如上图所示,这里可以配置tomcat容器的相关信息。

  • 如果你本地安装了tomcat,那么可以在Configure中配置使用你本地的tomcat。
  • 配置默认调试的浏览器。
  • 配置访问项目的url。
  • 配置容器运行所需的jre环境。
  • 配置tomcat本身的端口号。

7.2 部署项目

https://file.blog.humh.cn/2020/04/image-32.png

选择Deployment,选择Artifact后,就会将我们在之前配置的部署包关联至该tomcat中。如下图:

https://file.blog.humh.cn/2020/04/image-33.png

注意,Application context指的是项目运行在tomcat中的上下文路径,这里配置的“/”,是想“ip+端口号”方式直接访问项目。这里的配置务必与server.js中的配置对应。同时上面tomcat配置中的url项也是如此,需要对应。
注意,在进行部署项目前,务必阅读readme中的配置说明,仔细检查后,再进行这里的tomcat部署配置。

https://file.blog.humh.cn/2020/04/image-34.png

最后,直接运行tomcat即可。

日志会成功输出至控制台。

https://file.blog.humh.cn/2020/04/image-35-1024x270.png
console日志输出

成功进入站点

https://file.blog.humh.cn/2020/04/image-36-1024x510.png
项目成功运行效果图

humh

文章作者

站长本人,一个憨批!

发表评论

textsms
account_circle
email

想你所想

IDEA构建“传统JavaWeb项目”
该文主要阐述,如何在IDEA中构建起JavaWeb项目,这里以我的一个开源项目为例。 关于这个项目的信息,详见readme。这是我和我一个本科期间同学(前端大佬)一起完成的。我主要负责…
扫描二维码继续阅读
2020-04-07