Jest guide to the central repository że posiada sekcję na przesyłanie projektów, które mogą pomóc. Jeśli nic więcej, możesz sprawdzić konwencje nazewnictwa i minimalne wymagania informacyjne w stosunku do twojego projektu.
Sonatype również zrobić OSS Repository gospodarzem, zobacz their guide szczegóły.
Aktualizacja: Nie mówię, że powinieneś zmienić swój proces budowania - jeśli Ant działa, trzymaj się go. Warto przestrzegać konwencji Maven w POM niezależnie od metody budowania. Ponieważ umieszczenie twojego słoika w repozytorium Maven ma na celu udostępnienie go użytkownikom Mavena, będziesz musiał zdefiniować POM dla twojego opublikowanego artefaktu. Zgodnie z konwencjami nazewnictwa pomoże to użytkownikom, więc równie dobrze można to zrobić. Na przykład dodanie szczegółów SCM do pom (między innymi) pozwoli użytkownikom zaimportować projekt do swojego obszaru roboczego za pomocą integracji IDE dla Maven.
Zasadniczo masz 4 opcje:
- wykonać standardową Maven budować przeciwko repozytorium Maven (już wykluczyć)
- Konfigurowanie repozytorium Maven, wykonać buduje z Ant i użyć Maven do wdrożyć słoik i POM.
- Konfigurowanie repozytorium Maven, ad użyć Ant zadanie HTTP publikowania artefakty
- użyć Subversion "repozytorium" i użyć zadania SvnAnt opublikować artefakty
Wariant 1
Użyj Mavena, aby zbudować i rozmieścić artefakty (patrz Maven book i powyższe linki, aby uzyskać szczegółowe informacje).
Opcja 2
Zakładając, że proces budowania, który tworzy swój dzban, i pan zdefiniował POM, najlepiej jest, aby opublikować go do repozytorium Sonatype OSS jak wyżej.
Wdrażanie istniejącej jar standardowym repozytorium Maven jest prosta z Maven wdrażać Deploy-file cel pluginu:
- Konfigurowanie repozytorium (np na serwerach Sonatype podnosząc Jira request)
- Zbuduj twój słoik z Ant.
- Jeśli zdefiniowałeś POM, umieść go w tym samym katalogu co słoik.
Run Celem Deploy-file:
mvn deploy: wdrożyć plik -Durl = http://path/to/your/repository \ -DrepositoryId = some.id \ -dfile = ścieżka-do-your-artefakt-jar \ - DpomFile = ścieżka-do-your-pom.xml
Zauważ, że Maven wdrażać cel zostanie automatycznie przełoży pom.xml na [nazwa-projektu] - [version] .pom. Jeśli wykonujesz jedną z dwóch pozostałych opcji, musisz upewnić się, że zatwierdziłeś POM z ostateczną nazwą, tj. [Nazwa-projektu] - [wersja] .pom. Musisz również upewnić się, że tworzysz względne ścieżki dla artefaktów zgodnych z konwencjami Maven.
E.g. dla GroupID = com.foo.bar, artifactId = mój-projektu Version = 1.0.0, ścieżka do plików będą:
/com/foo/bar/my-project/my-project-1.0.0.jar
/com/foo/bar/my-project/my-project-1.0.0.pom
Wariant 3
Jeśli chcesz użyj Anta do wdrożenia w repozytorium Maven, możesz użyć Ant HTTP library (Uwaga, że sam tego nie próbowałem). Można utworzyć dwa zadania wstawiania HTTP, jeden dla słoika i jeden dla POM.
<httpput url="http://path/to/your/repository" putFile="/path/to/yourproject.pom">
<userCredentials username="user" password="password"/>
</httpput>
<httpput url="http://path/to/your/repository" putFile="/path/to/yourproject.jar">
<userCredentials username="user" password="password"/>
</httpput>
Wariant 4
Jeśli chcesz uniknąć Maven całkowicie i użyć Ant wdrożyć do SVN-backed repozytorium, można użyć SvnAnt Subversion library. po prostu musisz skonfigurować zadanie Svn import, aby dodać swoje artefakty do repozytorium Remote Subversion.
<import path ="/dir/containing/the/jar/and/pom"
url="svn://your/svn/repository"
message="release"/>
Który projekt open source jest to, że przy okazji? –
@Nie zobacz http://code.google.com/p/equalsverifier/ – jqno
thx, wygląda naprawdę fajnie! –