Beim Start des Springboot-Projekts ist beim Lesen der Konfigurationsdatei ein Fehler aufgetreten
Fehler beim Laden der Eigenschaftsquelle vom Speicherort „classpath:/application“. yml'
......
org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1
Bei der Suche nach Informationen wird im Wesentlichen festgestellt, dass der Grund ein Problem mit dem ist Dateikodierungsformat (die ursprüngliche YML-Datei ist im GBK-Format), also wurde das GBK-Format in UTF-8 geändert. Nach der Änderung stellte ich fest, dass die chinesischen Kommentare in der vorherigen Datei verstümmelt waren. Die Ursache des Problems sollte hier liegen , also habe ich alle Kommentare gelöscht und normal neu gestartet.
Hinweis: Überprüfen Sie nach der Änderung des Dateiformats, ob verstümmelte Zeichen vorhanden sind und auch Kommentare betroffen sind.
In SpringBoot gibt es eine fest codierte URL und es wird eine http-Anfrage gesendet, um eine Videoadresse zu erhalten.
Die ursprüngliche Idee war so, und dann dachte ich, dass das Schreiben auf diese Weise nicht flexibel genug sei. Da es sich um ein SpringBoot-Projekt handelt, ist es sehr praktisch, die URL direkt in der Konfigurationsdatei abzurufen.
Dann verwendet der Feind, der den Wert erhalten muss, die @VALUE-Annotation, um
zu erhalten, aber die URL kann nicht abgerufen werden und bleibt leer.
Endlich habe ich herausgefunden, dass ich diese Variable zuvor mit Static geändert hatte. Static initialisiert Variablen, bevor die Klasse geladen wird. Daher wird @VALUE zu diesem Zeitpunkt nicht wirksam. Für NULL
muss also nur die statische Aufladung entfernt werden.
Das obige ist der detaillierte Inhalt vonSo beheben Sie den Fehler, wenn Springboot application.yml liest. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!