2010-09-07 10 views
11

W mojej pracy cały rozwój wykorzystuje technologię Java, a do zarządzania naszymi repozytoriami Maven używamy Nexusa. Ale w przypadku nowego projektu kompilacja wymaga artefaktów dll i exe. Czy można umieścić te pliki binarne systemu Windows w repozytorium Nexusa? Czy jest jakiś plugin, aby to ułatwić? Czy to, co próbuję zrobić, jest szalone?Możliwe jest umieszczenie plików binarnych w repozytorium nexus?

Odpowiedz

12

Używam Nexusa do przechowywania wszystkich zależności binarnych pobieranych z Internetu.

można przesyłać pliki za pomocą Nexus GUI lub użyj polecenia Maven następująco:

mvn deploy:deploy-file \ 
    -Durl=$REPO_URL \ 
    -DrepositoryId=$REPO_ID \ 
    -DgroupId=org.apache.maven \ 
    -DartifactId=maven \ 
    -Dversion=2.2.1 \ 
    -Dpackaging=zip \ 
    -Dfile=maven.zip 

To wygeneruje POM dla pakietu zip automatycznie.

Aby pobrać zależności, można po prostu przejść do adresu URL Nexus, lub użyć rodzajowe zależnościach menedżera narzędzie jak bluszcz:

java -jar ivy.jar -dependency org.apache.maven maven 2.2.1 -retrieve [artifact].[ext] 
+0

Mam plik z obecnie '.zip' lub' .tar.gz' rozbudowa. Teraz chcę opublikować plik tak, jak w przypadku nexusa. Czy istnieje opcja publikowania bez rozszerzenia na nexus? Próbowałem publikować z poniższymi opcjami '-Dpackaging =" "i bez' -Dpackaging'. Zaobserwowany poniżej błąd: '' ' 00: 01: 28.828 [BŁĄD] Nie udało się wykonać celu org.apache.maven.plugins: maven-deploy-plugin: 2.7: plik-wdrażania (domyślny-cli) na projekcie standalone-pom : Informacje o artefakcie są niekompletne lub nieważne: 00: 01: 28.828 [BŁĄD] [0] Brak "opakowania". '' ' – RBT

+0

@RBT Opakowanie jest ważnym elementem metadanych, które należy uwzględnić podczas publikowania artefaktu. Pojawia się komunikat o błędzie informujący, że te metadane są obowiązkowe dla twojego repozytorium. Czy istnieje powód, dla którego nie chcesz dołączać opakowania? Jest mało prawdopodobne, że repozytorium pakietów będzie konwertować formaty plików. –

Powiązane problemy