idea中创建maven工程时GroupID 和ArtifactID怎么写

本文介绍了Maven坐标的基本概念,包括GroupId、ArtifactId、Version等元素的含义及其在项目中的作用。同时,阐述了如何通过Maven坐标定位和管理依赖的构件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



原文地址:http://www.cnblogs.com/panxuejun/p/6184072.html
groupId :the unique identifier of the organization or group that created the project

artifactId :unique base name of the primary artifact being generated by this project
GroupID 是项目组织唯一的标识符,实际对应JAVA的包的结构,是main目录里java的目录结构。

ArtifactID是项目的唯一的标识符,实际对应项目的名称,就是项目根目录的名称。

—————–1 基础知识必备—————————-

com.yucong.commonmaven
commonmaven
0.0.1-SNAPSHOT
jar
common_maven

groupId

定义了项目属于哪个组,举个例子,如果你的公司是mycom,有一个项目为myapp,那么groupId就应该是com.mycom.myapp.

artifacted

定义了当前maven项目在组中唯一的ID,比如,myapp-util,myapp-domain,myapp-web等。

version

指定了myapp项目的当前版本,SNAPSHOT意为快照,说明该项目还处于开发中,是不稳定的版本。

name

声明了一个对于用户更为友好的项目名称,不是必须的,推荐为每个pom声明name,以方便信息交流。

—————–2 何为mave坐标—————————-

maven的世界中拥有数量非常巨大的构件,也就是平时用的一些jar,war等文件。

maven定义了这样一组规则:

世界上任何一个构件都可以使用Maven坐标唯一标志,maven坐标的元素包括groupId, artifactId, version,package,classifier。

只要在pom.xml文件中配置好dependancy的groupId,artifact,verison,classifier,

maven就会从仓库中寻找相应的构件供我们使用。那么,”maven是从哪里下载构件的呢?”

答案很简单,maven内置了一个中央仓库的地址(http://repol.maven.org/maven2),该中央仓库包含了世界上大部分流行的开源项目构件,maven会在需要的时候去那里下载。

—————–3 坐标详解—————————-

org.sonatype.nexus

nexus-indexer

2.0.0

jar

groupId

定义当前maven项目隶属的实际项目。

groupId的表示方式与Java包名的表示方式类似,如: org.sonatype.nexus

artifactId

该元素定义实际项目中的一个Maven项目(模块),推荐的做法是使用实际项目的名称作为artifactId的前缀。

如:nexus-indexer

在默认情况下,maven生成的构件,其文件名会以artifactId作为开头,如:nexus-indexer-2.0.0.jar。

packaging【可选的,默认为jar】:

当不定义packaging时,maven会使用默认值jar。

classifier:

该元素用来帮助定义构件输出的一些附属构件。

项目构件的文件名是坐标相对应的,一般的规则为:artifact-version.packing

### IDEA创建 Maven Web 项目遇到 `Failed to execute goal` 错误的解决方案 当在 IntelliJ IDEA创建并尝试构建 Maven Web 项目,如果遇到了类似于 `Failed to execute goal org.apache.maven.plugins` 的错误提示,这通常意味着某些插件配置不正确或缺少必要的依赖项。 #### 修改 pom.xml 文件中的 Surefire 插件配置 为了修复此问题,在项目的根目录下打开 `pom.xml` 文件,并确保 `<build>` 节点内包含了如下所示的 Maven Surefire Plugin 配置: ```xml <build> <plugins> <!-- 添加或更新 surefire plugin --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.22.1</version> <configuration> <skipTests>true</skipTests> </configuration> </plugin> </plugins> </build> ``` 上述代码片段通过设置 `<skipTests>true</skipTests>` 来跳过测试阶段,从而避免因测试失败而导致整个构建过程终止[^2]。 #### 更新本地仓库索引 有由于网络原因或其他因素可能导致本地缓存的数据损坏。可以尝试清理本地 Maven 缓存来解决问题: - 打开命令行工具; - 输入命令 `mvn clean install -U` 强制刷新远程资源到本地仓库; #### 检查 IDE 设置与环境变量 确认当前使用的 JDK 版本是否满足项目需求以及是否已正确安装 JRE/JDK 并将其路径添加至系统的 PATH 环境变量中。另外还需验证 Idea 自身所指向的 SDK 是否准确无误。 #### 使用合适的生命周期阶段执行操作 对于初次导入的新工程来说,默认情况下可能会自动触发一些不必要的目标(goals),比如运行单元测试等。可以通过指定更恰当的目标来进行编译工作,例如仅使用 `package` 或者 `compile` 命令代替默认的 `install`。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值