idea配置artifacts(IDEA里面的Artifact到底是什么)

:暂无数据 2026-07-29 21:40:06 2

idea配置artifacts(IDEA里面的Artifact到底是什么)

本篇文章给大家谈谈idea配置artifacts,以及IDEA里面的Artifact到底是什么对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

本文目录

IDEA里面的Artifact到底是什么

我表示,我在刚刚整这个web开发的时候,在配置tomcat的时候,我也是很好奇,这个东西是什么?

一般会见到如下的图。

Artifact 是maven中的一个概念,表示某个module要如何打包。这又多个模块的概念,不懂的就先当他是个web项目吧,

例如war exploded、war、jar、ear等等这种打包形式;

一个module有了 Artifacts 就可以部署到应用服务器中了!

好奇这个带不带exploded的有什么差别不?

这个是不带exploded的。和下图的框框对比下,就可以看到差别啦。

explode 在这里你可以理解为展开,不压缩的意思。也就是war、jar等产出物没压缩前的目录结构。

建议在开发的时候使用这种模式,便于修改了文件的效果立刻显现出来。

经过上面的这简单图文说明,现在就好理解一点了吧。

IDEA打包jar程序

打包jar一共有两种方式
第一种:

快捷键(Ctrl+Alt+Shift+S)打开项目的Project Structure。在Artifacts创建

接着,指定main class,如下:

最后,得到创建得到的artifacts

注:这里可以通过“+”或者“-”选择那些需要打入artifacts的第三方jar文件,也可以将maven中的包都导入进来;

在菜单栏目选Build,最后一栏Build Artifacts

最后,在出现的窗口创建

得到打包结果:

去执行

一般会执行成功如果执行出错查看是什么错误排查即可;

maven打包的步骤:



maven 默认打包插件,用来创建 project jar

pom.xml配置如下:

2.1 maven-jar-plugins 无依赖第三方jar的打包
   maven 默认打包插件,用来创建 project jar

pom.xml配置如下:

运行:在target中找到打包出来的xxx.jar包,运行java -jar xxx.jar即可,但是如果程序有依赖其他包,比如程序依赖jdbc去查询db,这时候再执行就会出现找不到jdbc依赖,因为我们并没有将依赖包打进去。

支持定制化打包方式,更多是对项目目录的重新组装。以下方式用的比较少,因为我们依赖的jar,也会打进到我们最终生成的jar中,会导致一个jar文件过大,而且如果要给第三方使用,最好给一个纯净的。

pom.xml配置如下:

支持定制化打包方式,更多是对项目目录的重新组装。在2.2基础上,我们还可以利用assembly,将我们依赖的jar归类,打包成一个zip。发布项目的时候,将zip包copy到服务器上,直接unzip xxx.zip,里面包含要运行的jar以及依赖的lib,还有配置的config文件,还可以包括执行脚本,可以直接启动服务。

maven-assembly-plugin还需要配置一个assembly.xml文件,用于过滤不必要的第三方jar包文件,或者确定自己编译的项目文件路径、项目的启动脚本文件目录,打包的类型格式zip或者tar.gz等。
  assembly.xml文件内容为:

打包结果为:

用来打可执行包,包含依赖,以及对依赖进行取舍过滤。使用这种方式打出来的是揉合在一起,成为一个jar文件。这种打包方式的优点是可以利用transformer把第三方jar相同的配置文件组合成一个文件,如reference.conf文件等等。

pom.xml配置如下:

打包结果:

该插件主要用于项目maven编译打包时,跳过单元测试,pom.xml配置为:

文献:
IntelliJ IDEA自身以及maven项目打包方式(单模块) - 牧梦者 - 博客园 (cnblogs.com)

Intellij IDEA官方帮助文档解释什么是Artifact(原文翻译)

说明
***隐藏网址***
Artifact是什么? (What is an artifact?)
Artifact是你的项目资产的一个集合, 将他们项目中的文件放在一起去测试, 部署或者描述你的软件解决方案, 又或是项目的一部分.
例如是以编译的java class文件, 或者打包成java档案文件(jar包文件)的java应用, 一个web应用的文件夹(就是webcontent或myeclipse下的webroot)结构或者是一个web应用程序档案文件(war包文件)等.
Arifact是可以是一份档案文件, 或者是一个文件夹的结构, 包含下列元素:
一个或多个的项目模块编译输出(也就是类路径src下面的资源).
模块依赖包含的lib包.
资源文件的集合(web网页, 图片, 描述文件( descriptor files )等)
其他的Artifact
单独的文件, 目录或者档案(在部署构建artifacts的时候可以自己添加其他地方文件等)

Note : 上面说的档案一般是压缩文件, 例如war包, jar包, ear包.
Artifact的配置 (Working with artifact configurations)
Artifact的生成与 Artifact的配置有关, Artifact是在 Project Structure(项目结构) 对话框中进行管理的. (File | Project Structure | Artifacts).
Artifact配置关键的部分是 在 输出布局选项卡 Output Layout tab . 指定 Artifact的结构和内容.
译者注 : 将项目中的东西组合在一起的一个过程, 例如eclipse里我们添加jar包是直接add to path. idea就是在要在modules和artifacts这里配置lib等一些其他的文件.
构建Artifact (Building artifacts)
你可以在 Build | Build Artifacts 处构建你自己的 Artifact.你也可以通过执行 run/debug的配置来构建一个Artifact.在对应的 run/debug配置中, 在运行之前添加一个 Build 《ArtifactName》artifact
的任务到任务列表. 当你执行 run/debug配置的时候Artifact会自动构建. (Run | Run or Run | Debug)

在run/debug配置中包含一个构建Artifact的任务是有意义的, run/debug配置会以某种方式使用相应的artifacts.
译者注 : 上面这句话是说, 在我们添加了一个运行服务器的配置的时候可以在Deployement这个选项卡那里添加一个artifacts, 如果有已存在的artifacts, 那么会直接添加进来, 如果没有则会自动带你到Build | Build Artifacts这个地方去让你构建artifacts.
例如在一个应用服务器中启动一个打包成jar包中的artifact,或部署一个WAR/EAR artifact.默认情况下, 当Artifact构建时, 它会被放在out/artifacts/《artifact_dir》
文件夹.
运行JAR Artifact (Running JAR artifacts)
运行一个打包成JAR的java应用程序, IDEA提供了一些JAR应用运行配置(JAR Application run configurations), 创建这样的运行配置:
打开Run/Debug配置对话框( Run | Edit Configurations )
单击 + 号 , 然后选择JAR应用.

部署Artifact到应用服务器和云平台 (Deploying artifacts to application servers and cloud platforms)
许多artifact的格式(例如 WAR, 分解的WAR(Exploded WAR), 分解的EAR)都适合部署到应用服务器和云平台.以下是如何部署一个这样的artifact:
在一个服务器或云服务器的run/debug configuration中, 指定需要部署的artifact(使用部署选项卡或区域(Use the Deployment tab or field.))
run/debug工具窗口 , 或应用服务器中执行run/debug配置或使用部署命令

Intellij Idea导入项目时无法生成Artifacts

最近连续用idea直接从github上直接checkout,项目中已经包含out文件夹,已经包含war exploded包,然而idea无法识别此artifact,于是欲重新创建时无war exploded选项,tomcat找不到对应的启动包。
如图,首先从modules开始,新建web模块,文件指向:F:\_SOFTWARE\_CODE\IntelliJ IDEA 2018.1\workspace\Graduation\src\main\webapp。此时应该会提示在Artifact里没有web模块之类的话,然后选择Fix一下。

顺便注意一下,可能还未能识别出spring的配置文件,需要手动添加,添加位置点开绿色的spring即可看到

随即进入Actifact新建war包时即可选择From Module

在IDEA中配置Tomcat出现错误:Warning: No artifacts configured

出现错误:Warning: No artifacts configured

解决方法:
修改项目的JRE文件的路径:

IDEA里面的Artifact到底是什么的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于IDEA里面的Artifact到底是什么、IDEA里面的Artifact到底是什么的信息别忘了在本站进行查找哦。

idea配置artifacts(IDEA里面的Artifact到底是什么)

本文编辑:admin

更多文章:


数据库管理系统和数据库系统分别侧重(数据库,数据库管理系统,数据库系统,这三个分别是什么意思并举个实例)

数据库管理系统和数据库系统分别侧重(数据库,数据库管理系统,数据库系统,这三个分别是什么意思并举个实例)

今天给各位分享数据库,数据库管理系统,数据库系统,这三个分别是什么意思并举个实例的知识,其中也会对数据库,数据库管理系统,数据库系统,这三个分别是什么意思并举个实例进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

2026年9月7日 17:00

编程语言出现的先后顺序(最早的编程语言是哪一个)

编程语言出现的先后顺序(最早的编程语言是哪一个)

今天给各位分享最早的编程语言是哪一个的知识,其中也会对最早的编程语言是哪一个进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

2026年9月7日 16:10

小程序源码有什么用(大商创小程序源码好用吗)

小程序源码有什么用(大商创小程序源码好用吗)

“小程序源码有什么用”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看小程序源码有什么用(大商创小程序源码好用吗)!

2026年9月7日 15:40

springmvc的依赖(springMVC的注入方式有哪几种,这与springMVC依赖)

springmvc的依赖(springMVC的注入方式有哪几种,这与springMVC依赖)

大家好,关于springmvc的依赖很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于springMVC的注入方式有哪几种,这与springMVC依赖的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还

2026年9月7日 14:00

it培训评价网(it培训排名机构十大IT培训机构)

it培训评价网(it培训排名机构十大IT培训机构)

这篇文章给大家聊聊关于it培训评价网,以及it培训排名机构十大IT培训机构对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

2026年9月7日 13:00

个人博客页面布局(新手站长怎样做好独立博客初期运营工作)

个人博客页面布局(新手站长怎样做好独立博客初期运营工作)

大家好,如果您还对个人博客页面布局不太了解,没有关系,今天就由本站为大家分享个人博客页面布局的知识,包括新手站长怎样做好独立博客初期运营工作的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

2026年9月7日 12:40

display flex 自动换行(overflow-y:hidden;overflow-x:auto;无效解决方法)

display flex 自动换行(overflow-y:hidden;overflow-x:auto;无效解决方法)

大家好,关于display flex 自动换行很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于overflow-y:hidden;overflow-x:auto;无效解决方法的知识点,相信应该可以解决大家的一些困惑和问题,如

2026年9月7日 11:00

小程序免认证源码(小程序源码都能干嘛)

小程序免认证源码(小程序源码都能干嘛)

本篇文章给大家谈谈小程序免认证源码,以及小程序源码都能干嘛对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

2026年9月7日 10:50

timestamp without time zone(Postgresql中to_date()函数使用问题)

timestamp without time zone(Postgresql中to_date()函数使用问题)

各位老铁们好,相信很多人对timestamp without time zone都不是特别的了解,因此呢,今天就来为大家分享下关于timestamp without time zone以及Postgresql中to_date()函数使用问题

2026年9月7日 09:40

网页制作代码特效大全(谁知道网页打字机特效的代码)

网页制作代码特效大全(谁知道网页打字机特效的代码)

大家好,如果您还对网页制作代码特效大全不太了解,没有关系,今天就由本站为大家分享网页制作代码特效大全的知识,包括谁知道网页打字机特效的代码的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

2026年9月7日 04:20

最近更新

热门文章

yoga pro 14s carbon(yoga14s接口类型)
2026-07-03 17:50:01 浏览:5
domino directory(帮我翻译一下Recipient’s Domino Directory entry does not specify a valid Notes mail file)
2026-08-03 19:20:01 浏览:4
标签列表