有些公共方法像count()一样工作,还有一些我得到了“冻结”错误
gem 'rdf','=0.3.11.1‘要求'rdf’要求‘rdf/芝麻’要求‘rdf/ntriple’
url = RDF::URI("http://localhost:8080/openrdf-sesame")
conn = RDF::Sesame::Connection.open(url)
#server.each_repository do |repository|
# puts repository.inspect
#end
repo = RDF::Sesame::Repository.new("http://localhost:8080/openrdf-sesame/repositories/TEST")
repo.clear_statements() # does not work
puts repo.count() # gives the number of statements in the repository也许有人有提示,因为我不熟悉ruby编程。
错误信息的一部分:(我得到的另一个错误是NoMethodError,它来自于错误地使用了受保护的方法)
/home/USER/.rvm/gems/ruby-2.1.2/gems/addressable-2.3.6/lib/addressable/uri.rb:1658:in `normalized_fragment': can't modify frozen Addressable::URI (RuntimeError)
from /home/USER/.rvm/gems/ruby-2.1.2/gems/addressable-2.3.6/lib/addressable/uri.rb:823:in `freeze'
from /home/USER/.rvm/gems/ruby-2.1.2/gems/rdf-0.3.11.1/lib/rdf/model/uri.rb:475:in `freeze'发布于 2014-07-21 13:30:53
这个问题是由可寻址的更新版本造成的!
当我添加标题时:
gem 'addressable', '~> 2.2.6'
require 'addressable/uri'我再也不明白错误了!版本2.2.6或更高版本是必需的rdf-芝麻!
https://stackoverflow.com/questions/24826296
复制相似问题