2016-01-23 34 views
6

Mam .yml otwarty plik w Netbeans 8.1, który wygląda tak:„Mieliśmy to wartości mapowania nie są akceptowane tutaj” na YAML tagu

--- 
rules: 
    - !tp.aoi.topology.TopologyRule 
    labels: 
     - empty_A 
    output: 
     - entry_B 

Netbeans ma falowane czerwona linia pod linią - !tp.aoi.topology.TopologyRule i wypluwa następujące:

We had this mapping values are not allowed here 

Co powoduje ten błąd? Gramatyka tego wyrażenia jest dla mnie bezsensowna. Po usunięciu tagu nie ma żadnych problemów. Z tego, co rozumiem przez YAML z the spec, powinno to być poprawne YAML (patrz przykłady na temat "podstawowych uchwytów znaczników" w sekcji 6.18), a także this section of the spec w sekcji 2.24 "Globalne znaczniki".

Brak kart w tym dokumencie, tylko spacje.

Jestem prawie pewien, że otworzyłem dokładnie ten sam plik z wcześniejszą wersją NetBeans na Windowsie (jestem aktualnie na Ubuntu) bez żadnych problemów, ale być może korzystałem również z innych wtyczek YAML.

Co powoduje ten błąd? Próbowałem innych parserów i wydaje się, że to jest poprawne. Od another post on SO wydaje się, że często wiąże się to z brakiem spacji między dwiema stronami mapowania; to nie wydaje się być moim problemem.

+0

kodu pokazano tutaj ma miejsce przed '---' a kolejnym wierszu. Czy twój rzeczywisty plik YAML ma te spacje? Jeśli tak, powodują one, że YAML jest nieprawidłowy, ponieważ '---' jest interpretowane jako skalar (ciąg) zamiast wskaźnika uruchomienia dokumentu, a odwzorowanie nie może być zgodne z takim skalarem. Jeśli twój rzeczywisty plik * nie ma * spacji, to naprawdę jest to bardzo zagadkowe. –

+0

Dzięki, nie zauważyłem tego. Był to po prostu mój błąd podczas kopiowania tekstu na moje pytanie. Rzeczywisty plik nie ma tych spacji. Poprawiłem to pytanie. – karobar

+0

Wygląda na to, że może to być błąd, https://netbeans.org/bugzilla/show_bug.cgi?id=251407 – Gary

Odpowiedz

2

Jest to znany bug: zobaczyć NetBeans bugtracker here