该文主要阐述,如何在IDEA中构建起JavaWeb项目,这里以我的一个开源项目为例。
关于这个项目的信息,详见readme。这是我和我一个本科期间同学(前端大佬)一起完成的。我主要负责项目维护与该站点运维。
这个项目是一个前后端不完全分离的项目,虽然整体Http+JSON,但前后端是一块部署的 。同时项目是一个纯servlet项目,很常见的JavaWeb项目结构。所以直接拿此项目为例,旨在让你快速在IDEA中部署构建起来。(原先项目是基于MyEclipse构建的,去年搞过一次IDEA版的https://blog.csdn.net/H_233/article/details/87711791,这次重新又搞了下,理解比上次更更透彻些了。)
前提:先拉代码,本文基于release1.0阐述。
在项目下,打开 project setting
1、Project
如上图所示,分别为项目名、sdk源(这里采用自己安装的jdk1.8,IDEA中直接配置的全局)、指定java语言level(与采用的jdk版本对应即可)以及 项目编译目录(java src源码编译后的class目录,遵循java web项目规范,WEB-INF下的classes即可)
2、Modules
2.1 Sources
如上图所示,静态资源目录Excluded,src为源码目录,其他的 .idea 和 out 不用管。
2.2 Paths
如上图配置即可,当然你也可以选择第一项,这里也想额外指定下test(单元测试,虽然还没有。。hhh)编译的路径。
2.3 Framework Web
先创建一个Framework模板,这里用“Web”(IDEA中对Java 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
选择上图中的Java后,在弹框中选择你的jar包目录,该示例就是lib目录(注意要展开lib目录,全选其中的jar包,然后导入即可)最终的效果如下图所示:
4、Facets
Facets 其实就是 2.3 的内容,2.3 如果配置成功的话,这里就会直接显示出来,不用再做配置了。
5、Dependencies
这里需要回过头,配置Modules中的 Dependencies 项
按上面两张图,依次操作即可。图二中的lib就是我们刚刚在3、Libraries中配置后内容。
6、Artifacts
先按上图所示,选择Web Application,创建一个生成war的模板,然后再进行下面配置。
配置Output directory路径,该项是指定war包的内容来源存放路径。然后双击右边的Web facet resources(这就是2.3配置的Web,这里会根据Web模板来社生成指定内容至out目录,然后打成war包,部署至容器中)即可。
剩下的Platform Settings不用管。
7、部署项目至tomcat容器
7.1 在IDEA中配置tomcat
按照上述两步,创建一个本地tomcat容器,进入下面的配置界面:
如上图所示,这里可以配置tomcat容器的相关信息。
- 如果你本地安装了tomcat,那么可以在Configure中配置使用你本地的tomcat。
- 配置默认调试的浏览器。
- 配置访问项目的url。
- 配置容器运行所需的jre环境。
- 配置tomcat本身的端口号。
7.2 部署项目
选择Deployment,选择Artifact后,就会将我们在之前配置的部署包关联至该tomcat中。如下图:
注意,Application context指的是项目运行在tomcat中的上下文路径,这里配置的“/”,是想“ip+端口号”方式直接访问项目。这里的配置务必与server.js中的配置对应。同时上面tomcat配置中的url项也是如此,需要对应。
注意,在进行部署项目前,务必阅读readme中的配置说明,仔细检查后,再进行这里的tomcat部署配置。
最后,直接运行tomcat即可。
日志会成功输出至控制台。
成功进入站点
发表评论