简体   繁体   English

RefineryCMS Engines错误:没有有效的gemspec

[英]RefineryCMS Engines Error: did not have a valid gemspec

I can't install any engines. 我无法安装任何引擎。 After installing the first event engines from guide, I had an error saying I don't have a valid gem spec. 从指南安装第一个事件引擎后,我有一个错误,说我没有有效的宝石规格。

Using refinerycms-events (1.0) from source at vendor/extensions refinerycms-events at /Users/lydia/Desktop/projects/cmsex/vendor/extensions/events did not have a valid gemspec. This prevents bundler from installing bins or native extensions, but that may not affect its functionality. The validation message from Rubygems was: authors may not be empty

Now whenever I try to install another engines, the command line says installation has been successful, but I can't find that gem on bundle show. 现在,每当我尝试安装另一个引擎时,命令行说安装已成功,但我无法在bundle show上找到该gem。 I can't generate plugins and database. 我无法生成插件和数据库。

I have added these lines to my Gemfile: 我已将这些行添加到我的Gemfile中:

gem 'refinerycms-blog', '~> 2.1.0' 宝石'refinerycms-blog','〜> 2.1.0'

gem 'refinerycms-search', '~> 2.1.0' 宝石'refinerycms-search','〜> 2.1.0'

This is my Gems included in the bundle: 这是我的宝石包含在捆绑中:

    Gems included by the bundle:
  * actionmailer (3.2.16)
  * actionpack (3.2.16)
  * activemodel (3.2.16)
  * activerecord (3.2.16)
  * activeresource (3.2.16)
  * activesupport (3.2.16)
  * acts_as_indexed (0.8.3)
  * arel (3.0.3)
  * awesome_nested_set (2.1.6)
  * babosa (0.3.11)
  * bcrypt-ruby (3.1.2)
  * builder (3.0.4)
  * bundler (1.3.5)
  * coffee-rails (3.2.2)
  * coffee-script (2.2.0)
  * coffee-script-source (1.6.3)
  * decorators (1.0.3)
  * devise (2.2.8)
  * dragonfly (0.9.15)
  * erubis (2.7.0)
  * execjs (2.0.2)
  * friendly_id (4.0.10.1)
  * globalize (3.0.2)
  * hike (1.2.3)
  * i18n (0.6.9)
  * journey (1.0.4)
  * jquery-rails (2.3.0)
  * json (1.8.1)
  * mail (2.5.4)
  * mime-types (1.25.1)
  * multi_json (1.8.2)
  * orm_adapter (0.5.0)
  * paper_trail (2.7.2)
  * polyglot (0.3.3)
  * rack (1.4.5)
  * rack-cache (1.2)
  * rack-ssl (1.3.3)
  * rack-test (0.6.2)
  * rails (3.2.16)
  * rails-i18n (0.7.4)
  * railties (3.2.16)
  * rake (10.1.0)
  * rdoc (3.12.2)
  * refinerycms (2.1.1)
  * refinerycms-acts-as-indexed (1.0.0)
  * refinerycms-authentication (2.1.1)
  * refinerycms-core (2.1.1)
  * refinerycms-dashboard (2.1.1)
  * refinerycms-events (1.0)
  * refinerycms-i18n (2.1.0)
  * refinerycms-images (2.1.1)
  * refinerycms-pages (2.1.1)
  * refinerycms-resources (2.1.1)
  * routing-filter (0.3.1)
  * sass (3.2.12)
  * sass-rails (3.2.6)
  * seo_meta (1.4.0)
  * sprockets (2.2.2)
  * sqlite3 (1.3.8)
  * thor (0.18.1)
  * tilt (1.4.1)
  * treetop (1.4.15)
  * truncate_html (0.9.2)
  * tzinfo (0.3.38)
  * uglifier (2.3.2)
  * warden (1.2.3)
  * will_paginate (3.0.5)

When I try to generate a plugin, I get this: 当我尝试生成插件时,我得到了这个:

$ rails generate refinery:search
Could not find generator refinery:search.

I personally think it's because not having a valid gem spec. 我个人认为这是因为没有有效的宝石规格。 But what do I know haha. 但我怎么知道哈哈。 When I do "$bundle install" after editing Gemfile with blog and search gem, it does say they have been installed successfully. 在使用博客和搜索gem编辑Gemfile后进行“$ bundle install”时,确实说它们已成功安装。 But they are not installed and I can't do anything after that, such as creating plugins and database. 但是它们没有安装,之后我什么也做不了,比如创建插件和数据库。

Thank you so much for your help and I hope you can end my misery!! 非常感谢你的帮助,我希望你能结束我的痛苦!

I found that the RefineryCMS engine scaffold creates an invalid gemspec by default, and you have to edit it to include your name in the authors field before trying to install it. 我发现默认情况下RefineryCMS引擎脚手架会创建一个无效的gemspec,在尝试安装之前,你必须编辑它以在authors字段中包含你的名字。

Something like this: 像这样的东西:

Gem::Specification.new do |s|
  ...
  s.author            = 'Your Name Here'
  ...

  # Runtime dependencies
  s.add_dependency             'refinerycms-core',    '~> 2.1.0'

  # Development dependencies (usually used for testing)
  s.add_development_dependency 'refinerycms-testing', '~> 2.1.0'
end

or, even better... 或者,甚至更好......

s.authors = [ 'Your Name Here' ]

Since that's the current recommended syntax (although both still work). 因为这是当前推荐的语法(虽然两者仍然有效)。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM