Maven项目命名规范

Guide to naming conventions on groupId, artifactId and version
groupId will identify your project uniquely across all projects, so we need to enforce a naming schema. It has to follow the package name rules, what means that has to be at least as a domain name you control, and you can create as many subgroups as you want. Look at More information about package names.
eg. org.apache.maven, org.apache.commons

A good way to determine the granularity of the groupId is to use the project structure. That is, if the current project is a multiple module project, it should append a new identifier to the parent‘s groupId.

eg. org.apache.maven, org.apache.maven.plugins, org.apache.maven.reporting

artifactId is the name of the jar without version. If you created it then you can choose whatever name you want with lowercase letters and no strange symbols. If it‘s a third party jar you have to take the name of the jar as it‘s distributed.
eg. maven, commons-math

version if you distribute it then you can choose any typical version with numbers and dots (1.0, 1.1, 1.0.1, ...). Don‘t use dates as they are usually associated with SNAPSHOT (nightly) builds. If it‘s a third party artifact, you have to use their version number whatever it is, and as strange as it can look.
eg. 2.0, 2.0.1, 1.3.1

以上内容是maven官网文档中的,命名约定指南(https://maven.apache.org/guides/mini/guide-naming-conventions.html)

总的来说:
groupId:定义当前Maven项目隶属的实际项目,例如org.sonatype.nexus,此id前半部分org.sonatype代表此项目隶属的组织或公司,后部分代表项目的名称,如果此项目多模块话开发的话就子模块可以分为org.sonatype.nexus.plugins和org.sonatype.nexus.utils等。

特别注意的是groupId不应该对应项目隶属的组织或公司,也就是说groupId不能只有org.sonatype而没有nexus。

例如:我建立一个项目,此项目是此后所有项目的一个总的平台,那么groupId应该是org.limingming.projectName,projectName是平台的名称,org.limingming是代表我个人的组织,如果以我所在的浪潮集团来说的话就应该是com.inspur.loushang。

artifactId是构件ID,该元素定义实际项目中的一个Maven项目或者是子模块,如上面官方约定中所说,构建名称必须小写字母,没有其他的特殊字符,推荐使用“实际项目名称-模块名称”的方式定义,例如:spirng-mvn、spring-core等。
推荐格式:使用实际项目名称作为artifactId的前缀,紧接着为模块名称
举例:nexus-indexer、spring-mvc、hibernate-c3po……这些id都是以实际项目名称作为前缀,然后接着一个中划线,再紧跟项目的模块名称,默认情况下maven会在artifactId添加version作为最后生成的名称。例如:spirng-mvn-2.0.0.jar

原文地址:https://www.cnblogs.com/lukelook/p/11521187.html

时间: 2024-07-31 16:32:44

Maven项目命名规范的相关文章

项目命名规范(二)

项目命名规范 1.文件夹命名 1).最好用一个单词描述 常用项目命名 omi.element.master.project.test.vue.iview 二级目录 build.static.config.src.examples.base.common.issues.assert 三级目录 libs.models.plugins.skins.images.css.js 2).如果一个单词描述不了,用2个词(名词加动词) color-pick.button-groups.date-picker.o

java项目命名规范

一.命名规范 1. 项目名全部小写 2. 包名全部小写 3. 类名首字母大写,如果类名由多个单词组成,每个单词的首字母都要大写. 如:public class MyFirstClass{} 4. 变量名.方法名首字母小写,如果名称由多个单词组成,每个单词的首字母都要大写. 如:int index=0; public void toString(){} 5. 常量名全部大写 如:public static final String GAME_COLOR="RED"; 6.所有命名规则必须

Java项目命名规范(简洁版)——高薪必看

作为一个优秀的项目经理或项目带头人,必须养成良好优秀的项目命名规则和习惯.接下来把查到的资料整理一下,实际上,在很多项目中,也是遵循以下的规则. 一.项目名 全部小写,比如cms.workdesk,jobserver等 二.java相关命名 a.类命名:每音节单词前的第一个字母大写,比如FieldInfo.Expression等\ b.普通变量(包括spring里的变量引用命名):第一个单词前小写,以后每个单词第一个字母大写,password,primaryFlag c.静态变量:全部大写,多个

Java 项目命名规范

规范概览 对于一个标准的项目来说,目录名.包名.类名.方法名.变量名,这些名称都有一个大致的规范. 名称 规范 包名 公司域名倒写 数据访问层 dao.persist.mapping.mapper 实体类 entity.model.bean.javabean 业务逻辑 service.biz 控制器 controller.servlet.action.web 过滤器 filter 监听器 listener 异常 exception 类名和方法名的注释 /**     */ 方法内部的注释 /* 

javaWeb项目命名规范

一.项目结构 这里和其他项目区别不大,我将模板抽离出来,更容易分析和理解: 解释一下:js主要包括extends(引入第三方的js).module(项目模块自己的js).lib(引用包,这里也可以继续拆分),module中包含具体的模块中的js.common.js是核心命名空间的js. 二.common.js 解释一下,Globals作为全局命名空间,各个模块均可以在此命名空间里定义域(如果有不明白的可以自学下命名空间,这个文件写死就行,也不用具体理解). 三.task.js 这个文件是模块中我

项目命名规范

1 模块名称    比如计量模块写出JL 2注释 / *   */对方法进行注释或者对属性,有利于功能的扩展 3 包名 :每个包名都应该小写,例如:com.haiyisoft.store 4 类名 :TaskPlan 中间不允许出现下换线,并且首字母大写. 5  变量的命名 :writeSectno首字母小写并且符合命名驼峰命名法则 6  Static Final 变量的命名 变量的名字应该都大写,并且指出完整含义. 变量的各个单词之间用下划线分隔 Static final MAX_CONNEC

Maven项目没有Run AS和Debug AS想要的命令操作

如果我说的没错,你可能想看到的界面大致如下: 右边m2的红色标记一直是你的疑惑,你会有这样的疑问:怎么我的项目就没有这些操作呢? 那一定是你的项目不符合基本maven项目的规范. 按照如下的操作步骤创建项目即可.创建一个Maven项目: 下一步,勾选创建实例项目: 设置项目的属性: 就是这样就可以了.

项目复习期总结3:CSS引入方式,注释,命名规范,背景,行高,文本属性

目录: 1.CSS注释的书写 怎么写?好处? 2.CSS引入方式  各种的优缺点 3.选择器的写法与选择器的优先级 4.CSS命名规范 5.背景,行高 6.文本(text与font开头)等所有属性 ① CSS注释书写规范: 1.单行注释:    直接写在属性值的后面,如: ① .search{ border:1pxsolid#fff;/*定义搜索输入框边框*/ background:url(../images/icon.gif)no-report#333;/*定义搜索框的背景*/ } ② .wr

菜鸟教程之工具使用(二)——Maven打包非规范目录结构的Web项目

用过Maven的人都知道,Maven项目的目录结构跟传统的DynamicWeb项目有些不同.当然我们按照Maven的规范建项目最好,但是当你恰好没有按照Maven的规范来,又恰好需要使用Maven来打包,那该怎么办呢?其实很简单,这些都是可以通过配置pom文件进行更改的. Maven标准目录结构: myproject/ |-- pom.xml `-- src |-- main | |-- java | | `-- com | | `-- mycompany | |-- resources | `