专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

如何用Java IDE建立一个Web工程

在建立Java Web工程的时候发现IDEA中的Web工程结构似乎和Eclipse的Web工程结构不大一致,所以就想搞清楚Web工程结构是怎样的.

从Eclipse的非Maven工程开始

我的第一个Java IDE还是Eclipse,用它建立Web工程,只需要新建 Dynamic Web Project即可

62_1.png

通常在Eclipse中配置完还要修改一下部署路径

62_2.png

这个Deploy Path即为部署路径,是什么意思呢?就是Eclipse会把你的项目输出到Deploy Path中 那输出到Tomcat中文件结构和我们在Eclipse中看到的结构是否一致呢?

62_3.png

显然并不是一致的,我主要关心的有三点:

1. java代码编译成的字节码去哪了?
2. 我引入的jar包去哪里了? 
3. META-INF 是干啥用的?

META-INF: 相当于一个信息包,目录中的文件和目录获得Java 2平台的认可与解释,用来配置应用程序、扩展程序、类加载器和服务 manifest.mf文件,在用jar打包时自动生成。 java代码生成的字节码在WEB-INF中的Classes文件下,我们引入的jar包在WEB-INF的lib文件下。

62_4.png

所以你的项目要是报ClassNotFoundException时,你就先去lib文件下找找看,看有没有这个jar包。

Eclipse的Maven工程

62_5.png

在新建Maven工程的时候我发现了这个,archetypes意味: 典型、原型。那archetype是究竟是什么意思了? 对此,我打开了Maven官网, In short, Archetype is a Maven project templating toolkit 简而言之,archetype是一个maven项目模板工具包 其实官网还有一堆的解释,不过我都看的云里雾里的,在我看来原型就是一个目录结构模板,当你选择一个archetype的时候就是选择了一种项目结构,同样也包括你编译输出之后的结构,供Tomcat识别的结构。

62_6.png

选择这个模板,生成的目录结构如下:

62_7.png

但是选择怎样的模板,最后供Tomcat识别的还是如下:

62_8.png

那我不选模板,还想建Web工程可不可以呢? 当然是可以的:

62_9.png

62_10.png

62_11.png

右键选择 Java EE Tools 在选择Generate Deployment Descriptor stub 就自动产生了.(实在截不出来图)

IDEA的非Maven工程

选择模板

62_12.png

62_13.png

62_14.png

我原本以为目录结构是和Java EE的版本是有关系的,但是当我选择Java EE6的时候,目录结构和Java EE8一样的,但是最后供TomCat识别的目录都是一致的。

不选择模板

62_15.png

62_16.png

62_17.png

62_18.png

62_19.png

62_20.png

62_21.png

62_22.png

62_23.png

62_24.png

IDEA的Maven工程

我是不大喜欢IDEA新建Web工程的Maven archetype,之前建Web工程我都是自己建,不过你选了模板也没多大关系,你只需要在Project Structure中看一下编译后的文件都输出到哪里就可以了。

选择模板

62_25.png

62_26.png

62_27.png

62_28.png

62_29.png

62_30.png

62_31.png

不选择模板

62_32.png

62_33.png

62_34.png

62_35.png

文章永久链接:https://tech.souyunku.com/33415

未经允许不得转载:搜云库技术团队 » 如何用Java IDE建立一个Web工程

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们