IDEA进行项目构建

Maven专栏的第一篇文章

为什么是IDEA的项目构建呢?在详细了解maven之前,我一直以为maven只是用来下载包的,直到重新学习之后,才知道maven的核心构建项目,而我们现在开发项目基本都离不开IDEA,所以我们先来看看IDEA的项目构建👇

在IDEA中构建项目,我们肯定离不开Project Structure,一般我们可以在File->Project Structure打开下图这个面板,当然也可以通过快捷键Ctrl+Alt+Shift+S打开这个面板,那么接下来我们就来看看这个面板上的8块内容:

1. Project

用来指定项目名称SDK版本(你可以认为JDK是JAVA的SDK)、语言级别编译文件输出路径

2. Modules

① - Souces:这里对Module的开发目录进行文件夹分类,就是说这个module里有什么内容,说明了不同性质的内容放在哪里注意:这些不同内容的标记代表了一个标准Java工程的各项内容,IDEA就是根据这些标记来识别一个Java工程的各项内容。比如,它会用javac去编译标记为Sources的源码,打包的时候会把标记为Resources的资源拷贝到jar包中,并且忽略标记为Exluded的内容。左边显示的是在选中内容的预览。

② - Paths:为模块配置编译器输出路径,还可以指定与模块关联的外部JavaDocs和外部注释的位置。

③ - Dependencies:在此选项卡上,您可以定义模块SDK并形成模块依赖关系列表

3. Libraries

用来管理依赖包

4. Facets

翻译为特性,顾名思义就是给模块添加特性,常见的有WEBSpring

5. Artifacts

将来将我们的工程的打包成什么产品(jar、war......)

  • Artifact 是 maven 中的一个概念,表示某个 module 要如何打包,例如 war exploded、war、jar 等等这种打包形式; 一个 module 有了 Artifacts 就可以部署到应用服务器中了!
  • 在给项目配置 Artifacts 的时候有好多个 type 的选项,exploed 是什么意思?explode 在这里你可以理解为展开,不压缩的意思。也就是 war、jar 等产出物没压缩前的目录结构。
  • 建议在开发的时候使用这种模式,便于修改了文件的效果立刻显现出来。
  • 默认情况下,IDEA 的 Modules 和 Artifacts 的 output 目录 已经设置好了,不需要更改.
  • 打成 war 包 的时候会自动在 WEB-INF 目录 下生产 classes 目录 ,然后把编译后的文件放进去。
6. SDKs

系统开发工具 ,全局 SDK 配置

7. Global Libraries

全局类库,可以配置一些常用的类库。

8. Problems

问题,在项目异常的时候很有用,可以根据提示进行项目修复(FIXED)

9. .idea和.iml

当然还有IDEA在我们的项目下创建的.idea.iml文件,它们起了说明书的作用,告诉编译器我们设置的信息在哪里,这样别人的idea打开该项目时就能读取出来,并能明确项目的构建信息。

相关推荐
帅气的花泽类3 小时前
error Unexpected ‘debugger‘ statement no-debugger
java·maven
小菜日记^_^6 小时前
Maven高级篇
java·spring boot·后端·spring·maven·intellij-idea·mybatis
小码的头发丝、8 小时前
Maven的安装与配置
java·数据库·maven
疯一样的码农8 小时前
使用命令行创建 Maven 项目
java·maven
栗豆包10 小时前
w053基于web的宠物咖啡馆平台的设计与实现
java·struts·spring·tomcat·maven·intellij-idea
weixin_4467077410 小时前
IDEA2024 maven构建跳过测试
java·maven
尘浮生1 天前
Java项目实战II基于微信小程序的校运会管理系统(开发文档+数据库+源码)
java·开发语言·数据库·微信小程序·小程序·maven·intellij-idea
是老余1 天前
本地可运行,jar包运行错误【解决实例】:通过IDEA的maven package打包多模块项目
java·maven·intellij-idea·jar
crazy_wsp1 天前
IDEA怎么定位java类所用maven依赖版本及引用位置
java·maven·intellij-idea
bjzhang751 天前
SpringBoot开发——Maven多模块工程最佳实践及详细示例
spring boot·maven·maven多模块工程