我正在使用rails 4.2.4,ruby 2.1.7运行JetBrains RubyMine,并且正在创建一个应用程序作为培训项目的一部分。我正在尝试包括SASS并正在试验某些样式表。我根据SASS-rails文档添加了SASS gems并导入了verbiage,我的应用程序开始抛出这个(跟踪):
Errno::EACCES in Sessions#new
Showing H:/Development/RubyMine/DiceRollerWeb/app/views/sessions/new.html.erb where line #5 raised:
Permission denied @ sys_fail2 - (H:/Development/RubyMine/DiceRollerWeb/tmp/cache/assets/development/sprockets/v3.0/dWWzdOdzonUK3KUkyL3m5nbzYnP4jQTIQVpW3bCJg3k.cache.55176684.7688.886554, H:/Development/RubyMine/DiceRollerWeb/tmp/cache/assets/development/sprockets/v3.0/dWWzdOdzonUK3KUkyL3m5nbzYnP4jQTIQVpW3bCJg3k.cache)
Rails.root: H:/Development/RubyMine/DiceRollerWeb
Application Trace | Framework Trace | Full Trace
C:/Ruby21/lib/ruby/2.1.0/fileutils.rb:525:in `rename'
C:/Ruby21/lib/ruby/2.1.0/fileutils.rb:525:in `block in mv'
C:/Ruby21/lib/ruby/2.1.0/fileutils.rb:1579:in `block in fu_each_src_dest'
C:/Ruby21/lib/ruby/2.1.0/fileutils.rb:1595:in `fu_each_src_dest0'
C:/Ruby21/lib/ruby/2.1.0/fileutils.rb:1577:in `fu_each_src_dest'
C:/Ruby21/lib/ruby/2.1.0/fileutils.rb:514:in `mv'
sprockets (3.4.0) lib/sprockets/path_utils.rb:277:in `atomic_write'
sprockets (3.4.0) lib/sprockets/cache/file_store.rb:108:in `set'
sprockets (3.4.0) lib/sprockets/cache.rb:210:in `set'
sprockets (3.4.0) lib/sprockets/cache.rb:136:in `set'
sprockets (3.4.0) lib/sprockets/legacy.rb:128:in `cache_set'
sass-rails (5.0.4) lib/sass/rails/cache_store.rb:13:in `_store'
And so on...
我已确认“Everyone”的权限可以完全控制项目中的tmp目录。我做了一个rake tmp:cache:clear几次,没有成功。我试过完全没有成功地吹掉目录。这不是Unix环境,因此运行chmod并调整group:user rwx权限是不可能的。有没有人遇到过这个?
答案 0 :(得分:0)
我解决了自己的问题。
权限是由于项目文件存在于服务器共享上。一旦我将项目文件移动到本地C:上的可用位置(权限方式),我的问题就立即解决了。
将考虑开发人员的Linux VM选项。
答案 1 :(得分:0)
找到了不同的解决方案:
在test / test_helper.rb中,注释掉以下行:
# parallelize(workers: :number_of_processors, with: :threads)
无需并行测试,没问题