Daniel Compton edited this page Mar 15, 2018 · 28 revisions

Every jar uploaded to Clojars.org belongs to a group, which corresponds to the Maven groupId. Groups act as a namespacing mechanism so that multiple users can upload different forks of a project. They are also used as a simple access-control mechanism: only users that are members of a group can push jars to it. A new group is created automatically the first time someone pushes a jar to it.

By convention the Maven community uses a reversed domain name (like org.apache.maven) as the group name for a project to ensure uniqueness. Maven Central enforces this as a requirement for publishing there; Clojars does not. If you have a domain name that you control, you can use that as the group ID. Alternatively you can pick a unique, creative name for your project, e.g. korma, ring, buddy.

If you don’t specify a group in your project.clj, Leiningen will use the name of the artifact as the group.

Canonical group

A canonical group is for the main, official version of a project. Often, the group name is simply the same as the project or jar name. In Leingingen you can simply specify the project name foobar as a shorthand for canonical version of a project foobar/foobar.

Personal groups

Each user automatically gets their own group named org.clojars.username. Personal groups are designed to hold things like throwaway alpha versions and forks of other projects. They’re long and ugly on purpose to encourage official releases to use canonical groups.

Creating a group

Groups are created automatically when you push a jar to the repository. Simply specify the name you would like in your Leiningen project.clj:

(defproject mygroup/myproject "1.0"
  ...)

or as the groupId in your Maven pom.xml:

<project>
    <groupId>mygroup</groupId>
    <artifactId>myproject</artifactId>
    <version>1.0</version>
</project>

You can’t create a group with the same name as an existing group or user.

Adding members to a group

You can add a member to a group by clicking the group’s name on your dashboard and selecting “add new member” at the end of the member lists. Enter the person’s username.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.