Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/431.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Nanoc规则文件不处理我的JavaScript目录_Javascript_Nanoc - Fatal编程技术网

Nanoc规则文件不处理我的JavaScript目录

Nanoc规则文件不处理我的JavaScript目录,javascript,nanoc,Javascript,Nanoc,我的nanoc内容目录结构: assets -> (css, images, files) js partials [*.textile source files] 从我的规则文件中提取: compile '/js/*/' do # don’t filter or layout end . . . route '/js/*/' do item.identifier.chop + '.' + @item[:extension].to_s end 命令行结果: Message

我的nanoc内容目录结构:

assets -> (css, images, files)
js
partials
[*.textile source files]
从我的规则文件中提取:

compile '/js/*/' do
    # don’t filter or layout
end
.
.
.
route '/js/*/' do 
  item.identifier.chop + '.' + @item[:extension].to_s
end
命令行结果:

Message:

RuntimeError: Found 2 content files for content/js/bootstrap; expected 0 or 1

Compilation stack:

  (empty)

Stack trace:

  0. /home/tomc/.rvm/gems/ruby-2.1.1/gems/nanoc-3.7.1/lib/nanoc/data_sources/filesystem.rb:168:in `block in all_split_files_in'
  1. /home/tomc/.rvm/gems/ruby-2.1.1/gems/nanoc-3.7.1/lib/nanoc/data_sources/filesystem.rb:158:in `each_pair'
  2. /home/tomc/.rvm/gems/ruby-2.1.1/gems/nanoc-3.7.1/lib/nanoc/data_sources/filesystem.rb:158:in `all_split_files_in'
  3. /home/tomc/.rvm/gems/ruby-2.1.1/gems/nanoc-3.7.1/lib/nanoc/data_sources/filesystem.rb:86:in `load_objects'
  4. /home/tomc/.rvm/gems/ruby-2.1.1/gems/nanoc-3.7.1/lib/nanoc/data_sources/filesystem.rb:45:in `items'
  5. /home/tomc/.rvm/gems/ruby-2.1.1/gems/nanoc-3.7.1/lib/nanoc/base/source_data/site.rb:334:in `block in load_items'
  6. /home/tomc/.rvm/gems/ruby-2.1.1/gems/nanoc-3.7.1/lib/nanoc/base/source_data/site.rb:333:in `each'
  7. /home/tomc/.rvm/gems/ruby-2.1.1/gems/nanoc-3.7.1/lib/nanoc/base/source_data/site.rb:333:in `load_items'
  8. /home/tomc/.rvm/gems/ruby-2.1.1/gems/nanoc-3.7.1/lib/nanoc/base/source_data/site.rb:244:in `load'
  9. /home/tomc/.rvm/gems/ruby-2.1.1/gems/nanoc-3.7.1/lib/nanoc/base/source_data/site.rb:128:in `layouts'
  ... 27 more lines omitted. See full crash log for details.
我咨询过。我似乎把事情安排得很正确,但我的结果却恰恰相反


我看不出这个错误。有人有什么想法吗

由于Nanoc将输入文件名映射到输出路径的方式,它要求
content
下每个文件的基本名称(即无文件名扩展名)是唯一的。从Nanoc的角度来看,您给它提供了两个文件,它们共享基本名称
bootstrap
,因此不能有唯一的输出路径,因此它会给您这个错误

由于您真正想要的是将Nanoc副本逐字复制到站点的这一部分(第三方JavaScript文件),因此最好将这些文件从
content
树中移出,并设置一个静态数据源从中加载它们。然后,Nanoc将简单地按原样复制文件,而不尝试处理或重命名它们。Nanoc网站上的页面上有如何操作的说明;请参阅下面的“解决方案2”