YAML错误错误:解析“ <unicode string =”“>”中的块映射时,

时间:2019-03-07 19:51:28

标签: yaml

我四处张望,没有找到答案,这是我的YAML文件,这困扰了我几个小时。

The Error

这是我的yml文件组:

  default:
    default: true
    permissions:
    - modifyworld.*
    - modifyworld.chat
    - essentials.afk
    - essentials.home
    - essentials.home.bed
    - essentials.sethome
    - lwc.protect
    - essentials.help
    - essentials.list
    - essentials.motd
    - essentials.rules
    - essentials.spawn
    - essentials.tpaccept
    - essentials.tpdeny
    - essentials.mail
    - essentials.mail.send
    - essentials.balance
    - essentials.msg
    - essentials.ping
    - essentials.balancetop
    - essentials.balance.others
    - essentials.tpahere
    - essentials.tpa
    - essentials.delhome
    - essentials.sethome.multiple.default
    - essentials.chat.url
    - essentials.kit
    - essentials.kits.tools
    - essentials.kits.food
    - essentials.kits.halloween
    - essentials.pay
    - essentials.r
    - essentials.signs.create.protection
    - essentials.signs.create.trade
    - essentials.signs.use.balance
    - essentials.signs.use.buy
    - essentials.signs.disposal
    - essentials.signs.use.kit
    - essentials.signs.use.mail
    - essentials.signs.use.sell
    - essentials.signs.use.trade
    - essentials.signs.use.warp
    - essentials.time
    - essentials.warp
    - essentials.warp.list
    - essentials.spawner.bat
    - essentials.spawner.wolf
    - essentials.spawner.pig
    - essentials.spawner.squid
    - essentials.spawner.creeper
    - essentials.spawner.sheep
    - essentials.spawner.spider
    - essentials.spawner.cavespider
    - essentials.spawner.zombie
    - essentials.spawner.slime
    - essentials.spawner.chicken
    - essentials.spawner.blaze
    - essentials.spawner.skeleton
    - essentials.spawner.enderman
    - essentials.spawner.cow
    - essentials.spawner.magmacube
    - essentials.spawner.pigzombie
    - essentials.spawner.ocelot
    - essentials.spawner
    - essentials.seen
    - essentials.afk.auto
    - usb.island.warp
    - usb.island.topten
    - usb.island.sethome
    - usb.island.create
    - essentials.warps.parkour
    - essentials.warps.jail
    - mcmmo.commands.party.all
    - mcmmo.chat.partychat
    - essentials.ignore
    - auction.bid
    - auction.start
    - auction.cancel
    - auction.end
    - bukkit.command.help
    - bukkit.command.tell
    - mcmmo.commands.mctop
    - mcmmo.ability.herbalism.greenthumb.blocks.smoothbrick
    - mcmmo.ability.herbalism.greenthumb.blocks.dirt
    - mcmmo.ability.herbalism.greenthumb.blocks.cobblewall
    - mcmmo.ability.herbalism.greenthumb.blocks.cobblestone
    - mcmmo.ability.unarmed.disarm
    - mcmmo.ability.unarmed.blockcracker
    - commandrank.password
    - bookrules.info
    - sb.account.bypass
    - sb.use.atm
    - sb.use.money
    - chunkown.limit.4
    - bookrules.get
    - bookrules.list
    - towny.wild.*
    inheritance:
    - null
    options:
       rank: '1000'
       build: true
       suffix: ''
    prefix: '&8&l[&r&7Member&8&l]&7'
  Mod: {}
    prefix: '&2&l[&r&aMod&2&l]&c'
    permissions:
    - essentials.sethome.multiple.mod
    - modifyworld.*
    - essentials.enderchest
    - essentials.workbench
    - essentials.wb
    - usb.island.create
    - essentials.spawner.silverfish
    - essentials.back
    - essentials.warps.*
    - essentials.whois
    - essentials.gc
    - essentials.togglejail.offline
    - essentials.togglejail
    - essentials.jails
    - essentials.seen.extra
    - essentials.seen.banreason
    - essentials.socialspy
    - essentials.mute
    - essentials.invsee
    - bukkit.command.unban.ip
    - bukkit.command.ban.ip
    - bukkit.command.unban.player
    - bukkit.command.ban.player
    - bukkit.command.kick
    - bukkit.command.plugins
    - logblock.tools.tool
    - logblock.tools.toolblock
    - logblock.spawnTools
    - logblock.spawn.Tools
    - logblock.me
    - logblock.tp
    - logblock.rollback
    - logblock.lookup
    - essentials.teleport.timer.bypass
    - essentials.tphere
    - essentials.tp.others
    - essentials.tp
    - chunkown.limit.10
    - essentials.broadcast
    - essentials.unbanip
    - essentials.unban
    - essentials.tempban.offline
    - essentials.tempban
    - essentials.mute.notify
    - essentials.kick.notify
    - essentials.kick
    - essentials.banip
    - essentials.ban.offline
    - essentials.ban.notify
    - essentials.ban
    - mcbans.kick
    - mcbans.lookup.player
    - mcbans.view.staff
    - mcbans.unban
    - mcbans.ban.ip
    - mcbans.ban.temp
    - mcbans.ban.local
    - mcbans.ban.global
    inheritance:
    - default
    options:
      rank: '600'
      build: true
      suffix: ''
  Mod+: {}
    prefix: '&2&l[&r&aMod&2+&l]&r&c'
    permissions:
    - essentials.sethome.multiple.mod+
    - essentials.whois
    - towny.claimed.*
    - essentials.suicide
    - essentials.gc
    - essentials.togglejail.offline
    - essentials.togglejail
    - essentials.setjail
    - essentials.deljail
    - essentials.jails
    - essentials.weather
    - essentials.fly.safelogin
    - lwc.admin
    - permissions.user.demote.*
    - permissions.user.promote.*
    - modifyworld.*
    - commandrank.password
    - essentials.fly
    inheritance:
    - mod
    options:
      rank: '500'
      build: true
      suffix: ''
  Admin: {}
    prefix: '&c&l[&r&4Admin&c&l]&c'
    permissions:
    - '*'
  Owner:
    default: false
    prefix: '&c&l[&r&4Owner&c&l]&c'
    permissions:
    - '*'
    inheritance:
    - admin
    options:
      rank: 1
      build: true
      suffix: '&f'
users:
  Godfilms_:
    group:
    - Owner

2 个答案:

答案 0 :(得分:0)

您不应四处查看,而应该查看文件并分几步进行操作,同时保留错误以结束以下两行:

    for i in 1...100 {
    if i % 2 == 1 {
        continue
    }

    print(i - 1)
}

这两个仍然会给您错误。请注意,不是导致错误的示例中的第一个键 Mod+: {} prefix: '&2&l[&r&aMod&2+&l]&r&c' ,而是另一个值)

在第一行上,您具有映射键prefix,其值为空映射Mod+(YAML仅可以使用流样式包括空映射)。

因此,您必须问自己第二行的内容(相对于第一行缩进),好像它应该是某些不存在的键的值一样。

在不了解您的程序的情况下,如何解决此问题有无限的方法。可能第二行不应缩排:

{}

或者不应该在此处插入空映射:

  Mod: {}
  prefix: '&2&l[&r&aMod&2&l]&c'

或者说空映射实际上是键本身,它是映射的开始(不太可能,因为有些YAML加载程序可以解析但不能构造它)。

  Mod:
    prefix: '&2&l[&r&aMod&2&l]&c'

如果您尝试从YAML加载某些数据结构,建议您以编程方式(不加载YAML)进行构造,即仅通过分配值,以您使用的编程语言创建等效的映射和序列, 然后转储该数据结构。这将清楚地向您显示YAML文件中的布局。

答案 1 :(得分:0)

请使用以下网站更正错误并装饰YAML。

https://onlineyamltools.com/validate-yaml