2013-09-27 12 views
17

mam bibliotekę składającą się z 4 słoiki:Jak dodać słoiki innych firm do lokalnego repozytorium Maven?

matlabcontrol-4.1.0.jar 
matlabcontrol-4.1.0-javadoc.jar 
matlabcontrol-4.1.0-sources.jar 
matlabcontrol-demo-4.1.0.jar 

Jak dodać je do lokalnego repozytorium Maven tak, że wie, gdzie są źródła i gdzie javadoc jest?

Dokumentacja tutaj http://maven.apache.org/guides/mini/guide-3rd-party-jars-local.html jest bardzo krótka i nie odpowiada na to pytanie.

+2

dokumentacja wyraźnie wspomina, jak go dodać, których część nie rozumiesz? –

Odpowiedz

5

Klasyfikatory można również określić w wierszu polecenia. Zobacz http://maven.apache.org/plugins/maven-install-plugin/install-file-mojo.html#classifier.

Javadoc i źródła są po prostu artefaktami z klasyfikatorem tego samego pom.

Na przykład:

zainstalować główny artefakt

mvn install:install-file -Dfile=matlabcontrol-4.1.0.jar 
    -DgroupId=matlab -DartifactId=matlab -Dversion=4.1.0 

Zainstalować javadoc używając javadoc klasyfikatora:

mvn install:install-file -Dfile=matlabcontrol-4.1.0.jar 
    -DgroupId=matlab -DartifactId=matlab -Dversion=4.1.0 -Dclassifier=javadoc 
+0

Dzisiaj rozpoznałem, że ktoś zagłosował za moją odpowiedzią, ale on/ona nie pozostawił komentarza. Byłoby miło, gdyby można dodać komentarz, ponieważ jeśli coś jest nie tak, chciałbym to poprawić, a także nauczyć się czegoś dla siebie. –

+0

jaki jest cel grupidów i artefaktów? – Timeless

+0

@ Bez względu na cel, tutaj https://maven.apache.org/guides/mini/guide-naming-conventions.html jest lepsza klasyfikacja twojego projektu w repozytorium, między innymi projektami. Sprawdź to też. http://stackoverflow.com/questions/3150003/naming-convention-for-maven-artifacts i http://stackoverflow.com/a/12020832/1917237 – n3k0

23

Dokumentacja wyraźnie wymienione drogę. Pomyśl o matlabcontrol-4.1.0.jar w C:> lokalizacja. Więc przenieś swój cmd na C:> location i uruchom następujące polecenie.

mvn install:install-file -Dfile=matlabcontrol-4.1.0.jar -DgroupId=org.matlabcontrol \ 
    -DartifactId=matlabcontrol -Dversion=4.1.0 -Dpackaging=jar 

Jeśli tak, że można uzyskać dostęp do pliku jar z uzależnienia, takie jak:

<dependency> 
     <groupId>org.matlabcontrol</groupId> 
     <artifactId>matlabcontrol</artifactId> 
     <version>4.1.0</version> 
</dependency> 
+1

jaki jest cel grupy i artefaktu? – Timeless

+0

@Masud Instaluję słoik za pomocą tej samej procedury i widzę najnowszy słoik w moim lokalnym repozytorium maven, ale nowy słoik nie odzwierciedla w maven projektu ... możesz mi coś zasugerować – dom

+0

@Dimeless The groupId i artefactId są tym, co maven użyj, aby znaleźć bibliotekę, którą chcesz (sortowanie tak jak nazwa klasy i jej pakietu, ale dla słoika). Z grubsza rzecz biorąc, groupdId identyfikuje projekt, którego częścią jest artefakt. Podczas importowania niestandardowego słoika tworzysz jeden. Możesz użyć strony internetowej organizacji, na przykład com.mathwork.matlab, lub możesz użyć nazwy pakietu Java wewnątrz słoika, na przykład org.matlab.control. Cokolwiek wybierzesz, nie ma większego znaczenia, o ile jest wyjątkowe. –

Powiązane problemy