Joh*_*ohn 4 gem rails-engines ruby-on-rails-3.2
我正在尝试使用我的引擎,gem build myengine但我不断收到以下错误:
ERROR: While executing gem ... (Gem::Package::TooLongFileName)
Gem::Package::TooLongFileName
Run Code Online (Sandbox Code Playgroud)
我不希望myengine这个名字太长.知道这里可能会发生什么吗?
我通过查找导致问题的确切文件解决了这个问题 - 它是一个具有长名称的迁移文件.
对于那些感兴趣的人,从源代码split_name的TarWriter类方法抛出错误rubygems.如果出现以下情况,则会抛出此错误
我希望这有帮助.我已附上split_name以下方法的源代码供审阅.
def split_name(name) # :nodoc:
raise Gem::Package::TooLongFileName if name.size > 256
if name.size <= 100 then
prefix = ""
else
parts = name.split(/\//)
newname = parts.pop
nxt = ""
loop do
nxt = parts.pop
break if newname.size + 1 + nxt.size > 100
newname = nxt + "/" + newname
end
prefix = (parts + [nxt]).join "/"
name = newname
if name.size > 100 or prefix.size > 155 then
raise Gem::Package::TooLongFileName
end
end
return name, prefix
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1238 次 |
| 最近记录: |