Αν το mvnw αποτύχει κατά τη λήψη του Maven, μια λειτουργική καταχώριση διαμεσολαβητή στο settings.xml μπορεί να έρθει πολύ αργά: το Maven δεν έχει ξεκινήσει ακόμη.

Εξετάστε τα παραγόμενα αρχεία wrapper στο επηρεαζόμενο checkout και προσδιορίστε ποιον downloader εκτελούν. Το Maven Wrapper 3.3.4 τεκμηριώνει αυτές τις διατάξεις:

Παραγόμενος τύποςΠού να αναζητήσετε την είσοδο του διαμεσολαβητή
only-scriptcurl ή wget σε Unix; PowerShell σε Windows
scriptΗ λήψη του JAR του wrapper, ακολουθούμενη από τη διαδρομή του Java wrapper
binΤο ενσωματωμένο JAR του wrapper και η διαδρομή λήψης του μέσω Java
sourceΟ πηγαίος κώδικας του ενσωματωμένου Java downloader όταν χρησιμοποιείται για bootstrap

only-script είναι η τεκμηριωμένη προεπιλογή για τους νέους wrapper. Ένα παλαιότερο checkout διατηρεί τα παραγόμενα αρχεία του, ακόμη και αν ενημερώσετε την εγκατάσταση του Maven στον υπολογιστή σας.

Ταιριάξτε τη ρύθμιση με αυτή τη διαδικασία

Για έναν Unix wrapper only-script που χρησιμοποιεί curl ή wget, ρυθμίστε τη διεπαφή διαμεσολαβητή που υποστηρίζει αυτός ο downloader· μια λήψη HTTPS μπορεί να χρησιμοποιήσει το https_proxy. Αν αυτή η λήψη διανομής μπορεί να χρησιμοποιήσει δημόσιο HTTP διαμεσολαβητή, πάρτε μια υποψήφια διεύθυνση από τη λίστα διαμεσολαβητών HTTP για το περιβάλλον αυτού του downloader. Αν η τιμή ονομάζει διακομιστή SOCKS, ο downloader πρέπει να υποστηρίζει και αυτό το πρωτόκολλο.

Το MAVEN_OPTS παρέχει επιλογές JVM. Δεν μπορεί να ρυθμίσει τη διεργασία curl ενός shell, αλλά οι ιδιότητες διαμεσολαβητή της JVM μπορεί να έχουν σημασία σε μια διαδρομή λήψης μέσω Java. Αυτή είναι η χρήσιμη διάκριση όταν συγκρίνετε μια παλαιότερη λύση Takari με τον wrapper ενός άλλου έργου.

Μόλις ολοκληρωθεί η λήψη της διανομής και ξεκινήσει το Maven, οι λήψεις από τα αποθετήρια γίνονται ξεχωριστός έλεγχος απέναντι στη δική του ρύθμιση διαμεσολαβητή του Maven. Η διανομή, το JAR του wrapper και τα αποθετήρια μπορεί να σερβίρονται από διαφορετικούς κεντρικούς υπολογιστές.

Σχετικά άρθρα