Das generierte Zertifikat funktioniert nicht mehr, wenn es in den Ressourcenordner verschoben wird

9

Ich habe Probleme mit einem generierten Zertifikat, mit dem ich mich mit den Apple Push-Diensten verbinde. Alles funktioniert gut, wenn die generierte p12-Datei in meinem src / main / java-Ordner war, aber ich habe sie nach src / main / resources verschoben und beschlossen, mit dem folgenden Fehler aufzuhören:

%Vor%

Um etwas mehr ins Detail zu gehen: Ich benutze die Notnoop-Push-Notifications-Bibliothek und befolge das Tutorial von Ray Wenderlich, um die Zertifikate zu generieren. Danach habe ich folgende Befehle verwendet, um eine p12-Datei zur Verwendung in Java zu generieren:

%Vor%

danach habe ich die dual.p12 in mein Java-Projekt verschoben. Zuerst war die Datei in meinem / src / main / java-Ordner, sagen wir bei com.company.push.certificates (während der Code, der die Datei anfordert, bei com.company.push ist). Ich fordere einen Eingabestream mit

%Vor%

Dies funktioniert gut in der Entwicklung, aber nicht beim Erstellen des Projekts (mit Maven), deshalb habe ich die Ressource in den Ressourcenordner verschoben, indem ich das exakt gleiche Paket verwende. Die Ressource wird immer noch gefunden, aber jetzt bekomme ich das oben erwähnte java.io.IOException

Weiß jemand, was das verursacht?

Ps: Wenn ich die Datei zurück in das Paket in src / main / java verschiebe, funktioniert alles wieder gut, also scheint das Zertifikat gültig zu sein.

    
Kevin R 25.06.2013, 13:04
quelle

3 Antworten

18

Überprüfen Sie den Inhalt der Zertifikatsdatei NACH einem Build, wenn maven nach target / classes / ... kopiert hat. Wahrscheinlich maven Ressourcenfilterung oder etwas anderes in Ihrem Build verändert die Datei. Überprüfen Sie, was im Klassenordner GENAU ist, genau wie im Ressourcenordner.

Ссылка

    
Keith 25.06.2013, 13:26
quelle
12

Dies passiert, weil die Ressourcen-Filterung von Maven Ihre p12-Datei korrumpiert.

Wir haben das gelöst, indem wir p12-Dateien von der maven-Ressourcenfilterung in pom.xml ausgeschlossen haben:

%Vor%     
chris 19.12.2014 15:11
quelle
9

Persönlich mag ich nicht die umfasst nicht duplizieren / includes Abschnitt in der Maven-Build und zwei Ressourcenabschnitte, die synchron gehalten werden müssen -. So dass ich es vorziehen, die Maven Ressourcen-Plugin zu verwenden, um die nonFilteredFileExtensions zu konfigurieren statt

Der Abschnitt Ressourcen in den Build-Abschnitt dann einfach ist (plus irgendeine spezifische enthält die Sie benötigen):

%Vor%

Sagen Sie die Maven-Ressourcen-Plugin, das nicht zu filtern Dateien, wenn zB:

%Vor%

Siehe auch: Ссылка

    
joensson 05.02.2015 11:49
quelle