web-dev-qa-db-fra.com

Erreur YAML de fin de bloc attendue

En collant ce fichier YAML dans un analyseur yaml en ligne, j'ai eu une erreur de fin de bloc attendue:

ADDATTEMPTING: 'Tentative d ajout '
ATTEMPTINGTOGIVE: 'Tenter de donner '
ATTEMPTINGTOSET1: 'Tentative de définition '
ATTEMPTINGTOSET2: ' avec '
ALREADYEXISTS: 'Erreur. Package existe déjà’
CANCEL1: 'Annulation...'
(...)

Erreur

ERROR:

while parsing a block mapping
  in "<unicode string>", line 1, column 1:
    ADDATTEMPTING: 'Tentative d ajout '
    ^
expected <block end>, but found '<scalar>'
  in "<unicode string>", line 6, column 11:
    CANCEL1: 'Annulation...'
              ^
23
aman207

La ligne commençant par ALREADYEXISTS utilise comme guillemet de clôture, il doit utiliser '. Le devis ouvert sur la ligne suivante (où l'erreur est signalée) est considéré comme le devis de clôture, et ce mélange provoque l'erreur.

20
matt

Je voudrais que cette réponse soit significative, afin que le même type d'utilisateur erroné puisse profiter sans ressentir de tracas.

En fait, j'obtenais la même erreur mais pour une raison différente , dans mon cas, je n'ai utilisé aucun type de citation, obtenant toujours la même erreur comme expected <block end>, but found BlockMappingStart.

Je l'ai résolu en corrigeant, le problème d'alignement dans le même fichier .yml.

Si nous ne gérons pas le bon "espace de tabulation (touche du clavier)" pour maintenir le successeur ou l'ancêtre, nous devons alors échelonner ce genre de choses.

Maintenant je vais bien.

19
vishal gajera

Cette erreur se produit également si vous utilisez l'indentation à quatre espaces au lieu de l'indentation à deux espaces.

par exemple, ce qui suit lèverait l'erreur:

fields:
    - metadata: {}
        name: colName
        nullable: true

alors que changer l'indentation en deux espaces le corrigerait:

fields:
  - metadata: {}
    name: colName
    nullable: true
9
Jared Wilber

Avec YAML, rappelez-vous que tout dépend des espaces utilisés pour définir la configuration à travers les structures hiérarchiques (retraits). De nombreux problèmes rencontrés lors de l'analyse des documents YAML proviennent simplement d'espaces supplémentaires (ou pas assez d'espaces) avant une valeur de clé quelque part dans le fichier YAML donné.

6
Michael M

Comme mentionné par beaucoup, c'était aussi un problème d'indentation pour moi.

Utilisez le site Web suivant pour corriger les erreurs et améliorer YAML.

https://onlineyamltools.com/validate-yaml

0
Akshay Vijay Jain