试图在打包的应用程序中访问“当前目录”

时间:2011-12-12 14:39:34

标签: ruby packaging shoes

我需要构建一个应用程序,该应用程序读取一个文件,该文件位于Shoes包的外部,我将在其中分发。

在我的应用程序中,Dir.pwd指向临时目录(至少在Windows中),其中解压缩脚本以进行运行。我一直在尝试获取运行exe的目录,即我正在分发的包。

应用程序需要读取除此程序包之外分发的文件,然后在同一目录中写入另一个文件。

似乎Shoes运行时也没有为此目录设置任何env变量。有什么指针吗?

nachokb

2 个答案:

答案 0 :(得分:0)

我前一段时间遇到过这个问题,并没有提出直接的解决方案。我最终得到了两个解决方法:

  1. 在应用程序安装时,将文件放在用户主目录内的目录dir~ /(主页间接也适用于windows)
  2. 将文件与生成的可执行文件打包在一起,以便在与应用程序相同的位置解压缩,因此可以使用Dir.pwd进行访问
  3. 如果您找到其他方法,请指出。

答案 1 :(得分:0)

您是否尝试过以下内容:

DIR = File.expand_path __FILE__

__ FILE__是对当前文件的引用,File.expand_path为您提供完整的系统路径。在我的鞋子应用程序中工作: - )

穿上鞋子!

托比