java - maven中的package和groupId有什么区别
问题描述
我理解术语groupId
,artifactId
和version
。在阅读 aboutpackage
时,我可以看到它是您的根包的名称。默认是groupId
您之前输入的。.
package
在这种情况下,和 和有什么区别groupId
?我想它总是一样的,或者它们是否可以不同?有人解释
解决方案
似乎您在问package
使用 Maven Archetype 生成新的 Maven 项目时意味着什么。
这package
是配置包含所有生成的源代码的根java包。因此,如果将 设置package
为,生成的com.foo.bar
项目将包含com/foo/bar/
./src/main/java
groupId
artifactId
,和一起version
是您图书馆的一种唯一标识符。这意味着在您将项目打包为 JAR 并将其发布到世界之后,其他开发人员可以通过在groupId
他们 的.artifactId
version
pom.xml
因此,package
它只是您的项目内部使用的内部根包,它不会影响开发人员如何定位您的 JAR 并将其导入他们的项目。thepackage
和 thegroupId
可以不同。
(但当然,您应该将包命名为某个唯一的名称,这样它就不会与其他知名库冲突(例如,不要将其命名为java.lang
ororg.springframework
等)
推荐阅读
- javascript - 如何在 401 响应中禁用浏览器的默认登录提示?
- c# - 通过多个嵌套对象关系使用 EF Core 进行过滤
- r - R - 创建一个双条目数据透视表
- c# - 如何在不使用已弃用的 ExpectedConditions 的情况下在硒测试中遇到诸如“元素不可交互”异常之类的异常
- java - java - 如何在不使用Java比较器的情况下根据用户定义的标准对数组进行排序?
- kerberos - 为什么kerberos需要TGT?
- javascript - 什么是游戏手柄 api 中的“onkeyup”?
- javascript - 如何在谷歌地图 js api 中加载 epsg 4326 wmts 图层?
- keycloak - Keycloak 集群 Standalone-ha 问题数据用户
- mongodb - 是否可以在 MongoDB 的数组字段中存在的文档字段上创建索引?