2016-05-04 24 views
1

Ich möchte eine Opensource (Apache2) -Bibliothek verwenden, die aufgegeben wird, aber ich brauche eine Änderung daran. Ich habe eine Pull-Anforderung gesendet und dem Autor eine E-Mail gesendet, die jedoch nicht antwortet. Die letzten Commits für das Projekt sind> 6 Monate zurück. Also überlege ich es aufgegeben und habe das Projekt mit meinen Änderungen abgezweigt.Forking ein Projekt, welche GroupId für Maven Bintray zu verwenden?

Ich möchte es auf Bintray und jcenter hosten, so dass es über Gradle verwendet werden kann. Ich bin mir nicht sicher, was für „groupId“ in der Maven-Konfigurationsdatei zu verwendenden Werten und „artifactId“:

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

Der ursprüngliche Autor hat bereits auf Bintray + jcenter mit den obigen Werten gehostet.

Sollte ich nur die groupId auf meinen eigenen Wert ändern und die artifactId in Ruhe lassen? Ich will einfach nicht dort oben mit ihnen kollidieren.

Ein Follow-up - Ich habe nicht die Paketbenennung von den Dateien in den internen Java-Dateien für die Bibliothek geändert - ich nahm an, dass ich diese in Ruhe lassen konnte, ohne irgendwelche Probleme im Zusammenhang mit dieser Aufgabe.

Dank

+0

http://central.sonatype.org/pages/choosing-your-coordinates.html. –

Antwort

1

sollten Sie in der Lage sein zu tun, was Sie wollen, aber Sie werden die groupId ändern müssen. Sie sind nicht com.originalauthor. Auch wenn jcenter Sie mit der alten groupId veröffentlichen kann, ist es wahrscheinlich schlechte Form, dies zu tun.

In Bezug auf artifactId, sollten Sie es so lassen wie es ist. Wenn Sie den Namen beibehalten, können andere Ihre Gabel finden.

Schließlich sollten Sie wahrscheinlich die Originalversion des Autors ändern, damit andere wissen, dass Sie Änderungen vorgenommen haben, und Sie sollten eine neue Projekt-URL angeben, wenn Sie eine haben.

Es ist in Ordnung, die Namen der Pakete/Klassen/Variablen gleich zu lassen, und Sie möchten die öffentlichen Namen definitiv nicht ändern, wenn Sie die API nicht ändern.

+0

Großartig, macht Sinn - ja, ich möchte so viel wie verlassen. – user1219278

+0

Das ist eine großartige Antwort. Und nein, Bintray lässt Sie kein Paket mit jcenter verknüpfen, wenn wir keine Eigentumsrechte festlegen können. – JBaruch