问题
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. I can't generate plugins and database.
I have added these lines to my Gemfile:
gem 'refinerycms-blog', '~> 2.1.0'
gem '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. 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!!
回答1:
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.
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).
来源:https://stackoverflow.com/questions/20552152/refinerycms-engines-error-did-not-have-a-valid-gemspec