maven pom.xml中的artifactId和groupId有什么区别?

omqzjyyz  于 2023-05-06  发布在  Maven
关注(0)|答案(5)|浏览(277)

你会如何向一个新手Web开发人员或程序员解释一些真实的世界的组织示例(比如Facebook公司或Google公司)?

eiee3dmh

eiee3dmh1#

来自maven.apache.org,Naming Conventions
artifactId是没有版本的jar的名称。如果你创造了它,那么你可以选择任何你想要的名字,小写字母,没有奇怪的符号。如果是第三方jar,则必须在分发时使用jar的名称。例如mavencommons-math
groupId将在所有项目中唯一地标识您的项目,因此我们需要强制使用一个命名模式。它必须遵循软件包名称规则,这意味着它必须至少作为您控制的域名,并且您可以创建任意多个子组。查看有关软件包名称的更多信息。例如org.apache.mavenorg.apache.commons

webghufk

webghufk2#

以防新手理解。此链接描述了对项目标识符的最佳理解。如果我缩小到主要主题,那么这就是重点:
Maven使用一组标识符(也称为坐标)来唯一地标识项目并指定项目工件应如何打包:

  • groupId -创建项目的公司或组的唯一基本名称
  • artifactId -项目的唯一名称

如果您想了解这些标识符对POM的影响,可以访问
1.项目继承
1.项目汇总

fumotvh3

fumotvh33#

  • groupId在所有项目中唯一标识您的项目。
  • artifactId是没有版本的jar的名称。
jmo0nnb3

jmo0nnb34#

Maven中groupId和artifactId的主要区别在于groupId指定项目组的id,而artifactId指定项目的id。
开发项目时需要使用第三方库。程序员可以下载这些第三方库并将其添加到项目中,但以后很难更新它们。Maven为这个问题提供了一个解决方案。它有助于包含项目所需的所有依赖项。此外,程序员可以在POM.XML文件中指定所需的依赖关系。它具有生成项目的配置信息。此外,该文件由几个XML元素组成,其中两个是groupId和artifactId。示例groupId:com.test.java(类似于包名)artifactId:javaproject(项目或模块名称)

bxgwgixi

bxgwgixi5#

在POM或任何地方,人工制品有三个要素
1.列表项
1.组ID
1.版本
组ID唯一地告诉它属于哪里,人工制品ID告诉它是什么,版本告诉人工制品的确切版本。
例如:androidx.activityactivity-compose:1.7.1
语法:groupidatrifactid:version
这意味着对于androidx.activity:activity-compose:1.7.1,androidx.activity是组ID,activity-compose是工件ID,1.7.1是工件的版本。
你可以在Google Repo(URL:https://maven.google.com/web/index.html?q=activity-compose#androidx.activity:activity-compose:1.7.1)截图如下

实际工件的链接:https://dl.google.com/android/maven2/androidx/activity/activity-compose/1.7.1/activity-compose-1.7.1.aar

相关问题