Automatische Routing-Filter abgelehnt Remote-Anfrage - Nexus

8

Ich versuche, den netty-Codec-htp in mein Maven-Projekt zu bekommen. Ich habe ein völlig normales Sonatype Nexus eingerichtet, um Anfragen an Maven Central zu stellen.

%Vor%

Dies schlägt beim Erstellen mit maven fehl. Wenn ich es manuell in Nexus suche, finde ich es, aber wenn ich das Glas herunterlade, sagt es mir:

%Vor%

Was bedeutet das überhaupt, warum bekomme ich es, und vielleicht noch wichtiger, wie repariere ich es? Ich benutze Nexus 2.5.0-04 mit Maven 3.0.4

Das Herunterladen anderer Artefakte scheint gut zu funktionieren.

    
Mikkel Løkke 30.09.2013, 11:02
quelle

3 Antworten

13

UPDATE: Dies stellte sich als Problem bei der CDN-Konfiguration heraus, das jetzt behoben werden sollte. Die folgenden Schritte zum Erzwingen und / oder Deaktivieren der Remote-Erkennung dienen als Referenz.

Dies bedeutet, dass das automatische Routing für Central aktiv ist und dass die erkannten Regeln kein io.jetty als erlaubtes Präfix enthalten.

Dies sollte nicht passieren, da die Standardkonfiguration die Regeln täglich aktualisieren sollte (wie auf dem Screenshot unten zu sehen ist und die Standardkonfiguration für automatisches Routing für Central zeigt).

Das Problem besteht darin, entweder die Aktualisierung der Regeln zu erzwingen (ich habe überprüft, Präfix /io ist unter den Regeln, die Central veröffentlicht) oder die Remote-Erkennung vollständig zu deaktivieren.

Versuchen Sie die Schritte wie im Screenshot gezeigt:

    
Tamas Cservenak 08.10.2013, 12:22
quelle
1

Von Repository-Verwaltung mit Nexus - 6.4. Routing verwalten :

  

Routing kann als interne Aktivität betrachtet werden, die Nexus ausführt, um zu bestimmen, wo nach einer bestimmten Komponente in einem Maven-Repository gesucht werden soll. Die Routing-Informationen haben Auswirkungen auf die Performance des Komponentenabrufs sowie auf die Verfügbarkeit von Komponenten.   
(...)
Automatisches Routing wird von Nexus auf einer Repository-Basis behandelt.
(...)
Die Routing-Informationen bestehen aus den beiden obersten Ebenen der Verzeichnisstruktur des Repositorys und wird in einer Datei prefixes.txt gespeichert. Dadurch kann Nexus automatisch nur Komponentenanforderungen mit den entsprechenden groupId-Werten an ein Repository weiterleiten, um unnötigen Zugriff auf den Index oder sogar den Remote-Repository zu vermeiden.

Da Maven Central Repo dieses Artefakt enthält nehme ich an, dass das Automatische Weiterleitungsregeln verbieten den Remote-Download für dieses Artefakt. Die Fehlermeldung, die Sie gepostet haben, schlägt es auch vor.

Sie können lesen, wie Sie eine Routing-Regel unter 6.4 hinzufügen .2. Manuelle Routing-Konfiguration . Wenn meine Annahme richtig ist, sollte diese Situation gelöst werden, indem ein inclusive -Regeltyp mit ^/io/netty/.* route für den zentralen Repo hinzugefügt wird.

    
linski 30.09.2013 12:54
quelle
1

Ich hatte das gleiche Problem, als ich eine Brücke zwischen zwei Nexus konfigurierte .

In der ersten:

  1. Ich habe zwei Proxy-Repos hinzugefügt, die im zweiten auf zwei öffentliche Repo-Gruppen abzielen,
  2. Aggregieren Sie dann diese 2 Proxy-Repos in einer neuen Gruppe,
  3. , die ich schließlich der Repo-Liste der ersten öffentlichen Repo-Gruppe von Nexus hinzugefügt habe

Unter Verwendung des ersten Nexus habe ich jedes Mal, wenn ich eine Abhängigkeit angefordert habe, die nur in der zweiten vorhanden ist, die Ausnahme Automatic routing filter rejected remote request for path... gefunden.

Wie von Tamas erwähnt, stammt dieses Problem von der Funktion Routing >> Discovery , die in meinen 2 Proxy-Repos aktiviert wurde, die auf Remote-Nexus-Repository-Gruppen ausgerichtet waren. Einmal deaktiviert, wurde das Problem gelöst .

Die genaue Erklärung dieses Bedürfnisses wird in gewisser Weise in der offiziellen Sonatype-Dokumentation für erklärt Repository Management mit Nexus , in Kapitel 6.4.1 zum Automatischen Routing:

  

Die Registerkarte Routing für ein Proxy-Repository in Abbildung 6.18   "Automatisches Routing für ein Proxy-Repository" enthält die Erkennung   Abschnitt . Es zeigt den Status und eine detailliertere Nachricht über die   Präfix Dateizugriff. Im Feld Letzter Lauf werden Datum und Uhrzeit von angezeigt   die letzte Ausführung der Präfix-Dateierkennung. Eine solche Ausführung kann   durch Drücken der Schaltfläche Jetzt aktualisieren ausgelöst werden. Ansonsten das Update   Mit Intervall können Sie eine neue Entdeckung alle ein, zwei, drei,   sechs, neun oder zwölf Stunden oder als tägliche oder wöchentliche Ausführung.

     

[...]

     

Bei einem Proxy-Repository wird die Präfix-Datei entweder von der   Remoterepository oder eine Generierung wird versucht, indem die entfernte Datenbank entfernt wird   Repository. Diese Generation wird nicht für remote Nexus versucht   Repository-Gruppen , da sie zu dynamisch sind und nicht sollten   direkt weitergeleitet werden . Scrapping von gehosteten oder Proxy-Repositories   als Subversion-basierte Repositories wird unterstützt.

Grüße, Thomas

    
Thomas 13.04.2015 12:27
quelle

Tags und Links