我完全被这个难住了。我正在尝试调试一些创建FirstRun
文件的代码,作为程序已经完成第一次运行设置的标记。它尝试在absworkingdir
变量给定的指定工作目录中创建它。但是,当它尝试使用创建文件时File.new
出现以下错误
`initialize': No such file or directory '
以下是相关代码:
#First run setup
puts workingdir#debug
absworkingdir = File.expand_path(workingdir)
puts absworkingdir#debug
if File.exist?("#{absworkingdir}/FirstRun.lock") == false
puts "This appears to be the first run of FigShare Sync. We'll setup a few things."
print "Where would you like to store settings and files? [~./figsharesync]: "
@input = gets.chomp
puts @input#debug
if @input.empty? == false
workingdir = @input
absworkingdir = File.expand_path(workingdir)
end
print "Please enter OAuth consumer key: "
consumerkey = gets.chomp
print "Please enter OAuth consumer key secret: "
consumersecret = gets.chomp
print "Please enter OAuth access token: "
accesstoken = gets.chomp
print "Please enter OAuth access token secret: "
accesstokensecret = gets.chomp
puts "Great! we'll get running now..."
puts absworkingdir#debug
File.new("#{absworkingdir}/FirstRun.lock", "r")
end
这是调试行的输出:
~/.figsharesync/
/var/lib/stickshift/5165dc1e4382ec92040001a8/app-root/data/.figsharesync
This appears to be the first run of FigShare Sync. We'll setup a few things.
Where would you like to store settings and files? [~./figsharesync]:
Please enter OAuth consumer key:
Please enter OAuth consumer key secret:
Please enter OAuth access token:
Please enter OAuth access token secret:
Great! we'll get running now...
/var/lib/stickshift/5165dc1e4382ec92040001a8/app-root/data/.figsharesync
source/figsharesync2.rb:38:in `initialize': No such file or directory - /var/lib/stickshift/5165dc1e4382ec92040001a8/app-root/data/.figsharesync/FirstRun.lock(Errno::ENOENT)
from source/figsharesync2.rb:38:in `new'
from source/figsharesync2.rb:38:in `<main>'