我需要构建一个应用程序,读取一个文件,这是外部的鞋包,我将分发它。
在我的应用程序中,Dir。pwd指向临时目录(至少在Windows中),脚本将在其中解压缩并运行。我一直在尝试获取exe运行的目录,也就是我正在分发的包。
应用程序需要读取一个在此包之外分发的文件,然后在同一目录下写入另一个文件。
看起来Shoes运行时也没有为这个目录设置任何env变量。指针吗?
nachokb
我之前遇到了这个问题,没有提交一个直接的解决方案。我最终使用了两个变通方法:
- 在安装应用程序时,将文件放在用户主目录~/(home间接也适用于windows)内的目录
- 将这些文件与生成的可执行文件一起打包,以便在与应用程序相同的位置解压缩,因此可以通过Dir.pwd 访问。
您是否尝试过以下操作:
DIR = File.expand_path __FILE__
__FILE__是对当前文件和file的引用。Expand_path为您提供完整的系统路径。Works in my shoes apps:-)
的鞋!
托比