Файл содержит данные в неизвестном формате (ошибка времени выполнения) - PullRequest
3 голосов
/ 30 января 2012

Я пытаюсь собрать и запустить код ruby, который член команды написал для проекта класса.

Это ошибка, которую я получаю:

PS C:\users\bryan\Team6\PlanetDefense> ruby main.rb
C:/Ruby192/lib/ruby/gems/1.9.1/gems/gosu-0.7.41-x86-mingw32/lib/gosu/patches.rb:36:in
'initialize': File contains data in an unknown format. (RuntimeError)
    from C:/Ruby192/lib/ruby/gems/1.9.1/gems/gosu-0.7.41-x86-mingw32/lib/gosu/patches.rb:36:in `initialize'
    from C:/users/bryan/Team6/PlanetDefense/classes/playstate.rb:9:in `new'
    from C:/users/bryan/Team6/PlanetDefense/classes/playstate.rb:9:in `initialize'
    from C:/Ruby192/lib/ruby/gems/1.9.1/gems/chingu-0.8.1/lib/chingu/game_state_manager.rb:300:in `new'
    from C:/Ruby192/lib/ruby/gems/1.9.1/gems/chingu-0.8.1/lib/chingu/game_state_manager.rb:300:in `game_state_instance'
    from C:/Ruby192/lib/ruby/gems/1.9.1/gems/chingu-0.8.1/lib/chingu/game_state_manager.rb:148:in `push_game_state'
    from C:/Ruby192/lib/ruby/gems/1.9.1/gems/chingu-0.8.1/lib/chingu/helpers/game_state.rb:37:in `push_game_state'
    from main.rb:22:in `initialize'
    from main.rb:56:in `new'
    from main.rb:56:in `<main>'`

Похоже, это неправильный код:

class Gosu::Song
  alias initialize_ initialize

  def initialize(*args)
    args.shift if args.first.is_a? Gosu::Window
    initialize_(*args)
  end
end

Есть идеи, что такое "данные в неизвестном формате"? Я гуглил и ничего не могу придумать? Спасибо за помощь.

Ответы [ 2 ]

2 голосов
/ 14 февраля 2012

Я обнаружил, что «данные в неизвестном формате» были связаны с mp3-файлом, который gosu пытался воспроизвести.Закомментирование кода, связанного с этим, решило ошибку.

Вероятно, сейчас лучше не использовать .mp3s в gosu, лучше выбрать .wav

0 голосов
/ 19 апреля 2014

См. здесь , почему это не работает, например, в Windows, но работает на Mac. Вместо MP3 используйте формат OGG.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...