【问题标题】:NameError (uninitialized constant SnowplowTracker::SelfDescribingJson): when making a snowplow tracker in rubyNameError(未初始化的常量 SnowplowTracker::SelfDescribingJson):在 ruby​​ 中制作扫雪机跟踪器时
【发布时间】:2020-11-13 13:03:31
【问题描述】:

我收到错误: NameError(未初始化的常量 SnowplowTracker::SelfDescribeingJson): 当我尝试在 ruby​​ 中初始化描述 JSON 的 Self 时。下面是一些失败的示例代码:

require 'snowplow-tracker'
require 'contracts'
require 'webmock'

e = SnowplowTracker::Emitter.new('com.acme')
t = SnowplowTracker::Tracker.new(e)
t.track_self_describing_event(SnowplowTracker::SelfDescribingJson.new(
  "iglu:com.example_company/save_game/jsonschema/1-0-2",
  {
    "saveId" => "4321",
    "level" => 23,
    "difficultyLevel" => "HARD",
    "dlContent" => true
  }
))

奇怪的发射器和跟踪器不会抛出错误。这里有更多的上下文:

  • 使用 Ruby 2.5.5
  • gemfile 包含所有要求并已捆绑

【问题讨论】:

    标签: ruby-on-rails ruby snowplow


    【解决方案1】:

    我解决了这个问题。在我的 gemfile 中:

        gem 'contracts', '~> 0.16.0'
        gem 'webmock', '~> 3.8', '>= 3.8.3'
        gem 'snowplow-tracker'
    

    应该是:

        gem 'contracts', '~> 0.11.0'
        gem 'webmock', '~> 3.8', '>= 3.8.3'
        gem 'snowplow-tracker', '~> 0.6.1'
    

    如果您收到此错误,请在此处检查可用的版本:https://rubygems.org/gems/snowplow-tracker/versions/0.6.1

    跟踪器也依赖于旧版本的合同,但 bundle 告诉我要使用哪一个。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-05-28
      • 2014-05-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-25
      • 2022-06-25
      相关资源
      最近更新 更多