groupId проектов maven, размещенных на GitHub

У меня есть проект maven с открытым исходным кодом, размещенный на GitHub. Допустим, url-адресhttps://github.com/foo/bar.

теперь я хочу загрузить его в репозиторий Sonatype OSS Maven. Я проверил, что у них есть строгое правило для groupId (https://docs.sonatype.org/display/Repository/Choosing + ваши + координаты).

groupId идентифицирует ваш проект однозначно во всех проектах, поэтому нам нужно применить схему именования. Он должен следуйте правилам имени пакета, что означает, что это должно быть хотя бы доменное имя, которым вы управляете, и вы можете создать столько подгрупп, сколько хотите. например. орг.апаш.maven, org.апаш.палата общин Хороший способ определить гранулярность groupId-использовать структуру проекта. То есть, если текущий проект является проектом с несколькими модулями, он должен добавить новый идентификатор к groupId родителя. например. орг.апаш.maven, org.апаш.знаток.подключаемый модуль, орг.апаш.знаток.репортаж

вопрос в том, что для проектов, размещенных на GitHub, каков правильный groudId?

как пользовательский веб-сайт имеет домен foo.гитуб.io, у меня есть по крайней мере следующие два варианта:

  • com.на GitHub.фу!--18-->
  • io.на GitHub.фу!--18-->

4 ответов


Это популярный выбор, чтобы использовать groupId с хостинга сайта в имени. Поиск на http://search.maven.org на

  • net.sf
  • sourceforge
  • googlecode
  • github

хотя лучше использовать домен, которым вы действительно владеете, использование хостинга в groupId является разумным резервным вариантом. Вы должны попытаться убедиться, что вы выбираете имя, которое не связано с хостинговой компанией сам (например, com.google), но с хостингом сайта (например, com.googlecode), так что ясно, что вы являетесь проектом на сайте, а не проектом базовой компании.


Я думаю, вы должны использовать свой собственный домен в groupId, а не github.* - это означает, что проект на Гитхабе.


в то время как многие groupIds проектов Maven являются производными от веб-домена, они являются производными от домена людей, которые начали проект -github - это просто удобный сервис чтобы дать другим людям доступ к вашему проекту.

таким образом, вы должны выбрать идентификатор, который специфичен для вас как и все другие проекты.


другой вариант--foo.bar как groupId, но groupId с github это тоже хорошо.