Maven GroupId

944 阅读5分钟

Maven GroupId

Maven GroupId简介

Maven groupid是项目组的ID。一般来说,组ID在所有项目中都是唯一的。组ID可以确定我们的项目在所有项目中是唯一的,所以我们需要执行命名模式。在执行模式时,我们需要遵循包名的规则,所以我们可以说这是一个我们使用的域名。

什么是Maven GroupId?

Maven群组ID用于从所有其他项目中唯一识别我们的项目。组ID遵循java包名的规则,所以我们可以说,它将通过使用保留的域名开始。Maven没有执行这一规则,有多个遗留问题没有遵循这一惯例,而我们使用的是单字的组ID。我们很难获得单字组ID,而这个组ID是由maven的收录和中央仓库批准的。

在使用maven组ID时,我们可以根据我们的要求创建多个子组。确定组ID粒度的最好方法是使用项目的结构。maven项目的配置是通过使用项目对象模型完成的,该模型由文件名pom.xml表示。pom将描述项目所管理的依赖关系,它也被用于构建软件的插件配置。pom XML文件还定义了多模块项目之间的关系。

主要启示

  • pom.xml是maven默认的XML,所有的pom都继承自默认或父级。这个pom只不过是默认继承的默认pom而已。
  • Maven groupid使用默认pom来执行maven groupid中定义的相关目标。

Maven GroupId的命名

在使用maven groupid时,重要的是我们不需要从类文件中挑选名字,它会自动从java文件的1:1映射中获取名字。Maven要求我们选择两个名字,所以这对我们来说非常简单。为了定义Maven的分组命名,我们需要按照以下步骤进行。

  • 在这一步,我们要在spring initializer中创建项目模板。下图显示了maven分组命名项目的模板,如下所示。

组名 - com.groupid 工件 - maven_groupid

名称 - maven_groupid 包装 - jar

Java版本 - 8

Maven GroupId Naming 1

  • 创建模板后,现在我们要提取项目的文件,并在strong的工具套件中打开该文件,如下所示。

Maven GroupId Naming 2

  • 在这一步中,打开maven groupid的项目时,我们要检查pom.xml文件,如下所示。

Maven GroupId Naming 3

  • 在下面的例子中,我们定义了如下的命名规则。我们将名称定义为maven_groupid,如下所示。

代码。

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.3</version>
<relativePath/>
</parent>
<groupId>com.groupid</groupId>
<artifactId>maven_groupid</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>maven_groupid</name>

Maven GroupId Naming 4

  • 在下面的例子中,我们改变了maven的名称,同时也改变了groupid,如下所示。

代码。

<parent>
<groupId> org.springframework.boot </groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.3</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.maven</groupId>
<artifactId>maven_groupid</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>maven_group</name>
<description>Project for maven_groupid</description>
<properties>

Maven GroupId Naming 5

Maven限制了GroupId

我们可以通过执行源代码来为我们的项目定义架构规则。Sonar包含这种类型的能力,用于指定这些规则,并根据我们项目的质量仪表盘显示违规情况。下面的例子显示了我们如何在maven中限制groupid,如下。

代码。

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId> maven-groupid </artifactId>
<version> 2.5 </version>
<configuration>
<targetJdk> 1.8 </targetJdk>
<rulesets>
<ruleset> settings.xml </ruleset>
</rulesets>
</configuration>
<dependencies>
<dependency>
<groupId> maven_group </groupId>
<artifactId> RestrictionRule </artifactId>
<version> 0.0.1 </version>
</dependency>
</dependencies>
</plugin>

Maven Restricts GroupId 1

在下面的例子中,我们使用了一个单一的groupid限制,如下所示。我们定义了单个groupid,如下所示。

代码。

<dependency>
<groupId> maven_group </groupId>
<artifactId> RestrictionRule </artifactId>
<version> 0.0.1 </version>
</dependency>

Maven Restricts GroupId 2

Maven GroupId和ArtifactId

在下表中,我们定义了artifactid和group id如下。我们必须在pom.xml文件中进行同样的定义。

编号:Sr. No.组名工件名称
1GroupId是对项目的唯一标识。ArtifactId是没有版本的jar的名字。
2GroupId有各种版本。ArtifactId没有任何版本。
3我们在pom.xml文件中定义了GroupId。我们在pom.xml文件中定义了ArtifactId。
4在定义GroupId的时候,我们可以选择任何名字。在定义ArtifactId的时候,我们可以选择任何名字。
5我们需要用小写字母来定义GroupId的名字。我们需要用小写字母来定义ArtifactId的名字。
6Maven没有通过使用GroupId来执行该规则。Maven没有通过使用ArtifactId来执行该规则。
7我们已经在插件部分定义了GroupId。我们在插件部分定义了ArtifactId。
8GroupId不过是项目的一个ID。ArtifactId只不过是项目的一个ID。
9GroupId只不过是pom.xml文件的一个元素。ArtifactId只不过是pom.xml文件的一个元素。
10GroupId指定了一个项目组的id。ArtifactId将指定项目的if。

Maven GroupId示例

pom.xml文件包含项目的相关信息。它还包含插件和目标。下面的配置,我们需要在配置文件中指定。

  • 项目依赖性
  • 插件
  • 目标
  • 构建配置文件
  • 项目版本
  • 邮件列表
  • 开发人员

下面是POM的例子,如下所示。

示例 #1

在下面的例子中,我们将组的ID定义为maven-groupid。

代码。

<groupId>com.maven-groupid</groupId>
<artifactId>maven-groupid</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>maven-groupid</name>
<description>Project for maven_groupid</description>
<properties>

Example 1.1

Example 1.2

示例#2

在下面的例子中,我们使用默认的项目源文件夹作为输出目录,如下所示。

代码。

<groupId>com.maven</groupId>
<artifactId>maven_grpup</artifactId>
<version>1.0</version>
....
</reporting>
</project>

Example 2.1

Example 2.2

常见问题

下面是提到的常见问题。

Q1.maven GroupId中的超级POM有什么用?

**答:超级POM可以帮助开发者从pom.xml文件中指定最小的配置细节。**超级POM可以帮助我们的开发者从pom.xml文件中指定最小的配置细节,该文件中的配置被覆盖了。

Q2.maven GroupId的用途是什么?

**答:GroupId是唯一能识别所有的组。**GroupId可以唯一地识别所有项目。组ID是从反转域开始的。Maven不执行这类规则,有多个项目没有遵循惯例。

Q3.GroupId中的maven pom的用途是什么?

**回答。**maven pom不过是与maven项目一起工作的对象模型。

结论

maven项目的配置是通过使用项目对象模型完成的,该模型由文件名pom.xml表示。在执行模式时,我们需要遵循包名的规则,所以我们可以说这是一个我们使用的域名。

推荐文章

这是一篇关于Maven GroupId的指南。这里我们讨论了介绍,以及如何定义maven groupId,并附有实例。

  1. Maven Failsafe Plugin
  2. selenium maven依赖性
  3. Maven本地仓库
  4. JUnit 4 Maven

The postMaven GroupIdappeared first onEDUCBA.