小编给大家分享一下idea中的project、module、artifact怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
idea中没有工作空间的概念,每一个项目都是一个工作空间,所以我们打开一个新的项目时往往都要配置一下jdk、编译版本、编译输出路径、maven打包设置等。project下有一个module的概念,这个module类似于eclipse中的project。如果一个项目是一个聚合工程,那么它可以配置多个module。module中主要配置这个模块的代码结构,编译输出路径,依赖管理等。
jar包项目因为所有的依赖(Tomcat等)都包含在本模块中,只要编译好了就可以直接运行。但如果是war包项目,它需要部署在Tomcat等容器中,所以需要有一个artifact。
关于artifact的作用在CSDN中有一个博主是这么说的:
artifact是一种用于装载项目资产以便于测试,部署,或者分布式软件的解决方案。例如集中编译class,存档java应用包,web程序作为目录结构,或者web程序存档等
这里主要针对全局做配置,但是现在的项目一般都是多模块的,各模块的具体要求都不尽相同,所以这里的配置大多都会被module配置覆盖。
针对各个模块做配置,我们大部分生效的配置都在这里
新建module的方法
删除父项目的src后,再右键父项目的new
pom依赖导入,就可以了,这里就不需要在设置了吧?
Facets(名词:方面)
artifact 可以作为存档文件 ,或者作为包含以下结构元素的目录结构:
一个或多个编译模块、模块依赖的类库、Resources 集合、其他 artifacts、独立的文件目录或存档
再白话一点,就是说某个 module 要如何打包
例如 war exploded、war、jar、ear 等等这种打包形式
某个 module 有了 Artifacts 就可以部署到应用服务器中了
jar:Java ARchive
,通常用于聚合大量的 Java 类文件、相关的元数据和资源(文本、图片等)文件到一个文件,以便分发 Java 平台应用软件或库
war:Web application ARchive
,一种 JAR 文件,其中包含用来分发的 JSP、Java Servlet、Java 类、XML 文件、标签库、静态网页(HTML 和相关文件),以及构成 Web 应用程序的其他资源
exploded
:在这里你可以理解为展开,不压缩的意思。也就是 war、jar 等没压缩前的目录结构。建议在开发的时候使用这种模式,便于修改了文件的效果立刻显现出来
默认情况下,IDEA 的 Modules 和 Artifacts 的 output 目录已经设置好了,不需要更改,打成 war 包的时候会自动在 WEB-INF 目录下生成 classes,然后把编译后的文件放进去。
具体操作:
Web Application: Exploded
,Web Application: Archive
这两个打包的东西是一样的,只不过Archive类型的就是压缩过的,一般开发时选Exploded类型的。
看完了这篇文章,相信你对“idea中的project、module、artifact怎么用”有了一定的了解,如果想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。