In General, we encounter these terminology while creating a maven project.
1. groupId == Package Name
so we need to enforce a naming schema ( all small characters )
Ex: org.maven.common ( reverse domain packages)
2. artifactId is the name of the jar without version ( all small chars with '-' symbol between words)
artifactId == project name
Ex: my-common.jar
3. version if you distribute it then you can choose any typical version with numbers and dots (1.0, 1.1, 1.0.1, ...).