Search code examples
mavenbintrayjcenter

Forking a project, what groupId to use for Maven to Bintray?


I want to use an opensource (apache2) library that is abandoned, but I need one change to it. I submitted a pull request, and emailed the author, but they are not responding. The last commits to the project are > 6 months ago. So I'm considering it abandoned, and have forked the project with my changes.

I want to host it on Bintray and jcenter so it can be used via gradle. I'm not sure what values to use in the maven configuration file for "groupId" and "artifactId":

<metadata>
  <groupId>com.originalauthor</groupId>
  <artifactId>fast-cars-awesome</artifactId>
  ...
</metadata>

The original author already has it hosted on Bintray + jcenter with the above values.

Should I just change the groupId to my own value, and leave the artifactId alone? I just don't want to collide with them up there.

One follow up - I haven't modified the package naming of any of the files in the internal java files for the library - I assumed I could leave those alone without any problems related to this task.

Thanks


Solution

  • You should be able to do what you want, but you will need to change the groupId. You are not com.originalauthor. Even if jcenter lets you publish with the old groupId, it's probably bad form to do so.

    With regard to artifactId, you should leave it as-is. Keeping the name the same will help others to find your fork.

    Lastly, you should probably bump the original author's version to let others know that you made changes, and you should provide a new project URL if you have one.

    It's fine to leave the package/class/variable names the same, and you definitely do not want to change public names if you aren't changing the API.