- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我创建了一个 gem,它公开了一个在 Linux 下运行的可执行文件。在 Windows 中,如果我导航到安装 gem 的目录,我可以从命令行运行它,但我必须在调用 ruby
时自己指定 -Ilib
。
我想使用 Ocra 将可执行文件 + 依赖项(gem 的其余部分)+ Ruby 转换为供其他用户使用的 exe 文件,但文档似乎在说手动弄乱加载路径对 Ocra 来说不是一个好主意。
我如何告诉 Ocra 使用 gem 的可执行脚本而不用自己弄乱 Ruby 的加载路径?我想这将取决于是否有某种方式可以运行可执行脚本,利用它们是已安装 gem 的一部分并为我找出依赖关系这一事实。
最佳答案
我的问题被证明需要两部分的答案:
关于 Rugbygems 如何在 Windows 中打包可执行文件的潜在无知:它将它们放在 ruby 安装目录的 bin/目录中,该目录是在安装 Ruby 时添加到路径中的。脚本本身不可执行,但 Rubygems 为每个可执行文件创建一个 .bat
文件包装器,例如对于 mygem.rb
一个伴随的 mygem.rb.bat
文件,它将在命令提示符下的任何地方运行。
因此可以使用以下命令运行 ocra 脚本:ocra path/to/Ruby/bin/mygem.rb
。
请注意,如果您启动某种服务器作为可执行文件的一部分,它可能会在您运行 ocra 时结束运行,并且永远不会继续创建可执行文件。因此有必要在启动服务器之前检查 ocra 是否正在运行:
if not defined? Ocra
#do server startup stuff here
end
事实上,我最终创建了一个“安装程序”脚本,其中包含 if not defined?
代码,以免弄乱我可能想要用于其他目的的可执行脚本。
关于ruby - Ocra 和脚本在 Rubygems gemspec 中标记为可执行文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11905065/
SCENARIO 我已经安装了 Ruby 2.1.5 (x64)包然后我安装了Ocra gem 成功: gem install ocra Fetching: ocra-1.3.3.gem (100%)
我只想知道以下是否可行: 我创建 ruby 可执行文件的目标是能够为我的 ruby 脚本添加一些可移植性。该脚本所做的是收集一些放在某个目录下的.txt文件,然后对它们进行处理并将.txt结果
我创建了一个简单的 ruby 脚本 require 'gtk3' def destroy( widget ) Gtk.main_quit end Gtk.init window = Gtk:
我想将我的 Ruby 应用程序部署为 .exe 文件,供 Windows 用户使用。该应用程序将 Tk 用于 GUI 部分。 由于我无法成功使用 rubyscript2exe,所以我选择了 ocr
我正在尝试打包一个 rails (3.2) 应用程序以在 Windows 机器上运行,我正在使用 OCRA 将应用程序“编译”为一个 exe。在反复敲打我的 table 后,我设法让应用程序编译并运行
我创建了一个 gem,它公开了一个在 Linux 下运行的可执行文件。在 Windows 中,如果我导航到安装 gem 的目录,我可以从命令行运行它,但我必须在调用 ruby 时自己指定 -Ilib。
背景: Ruby 脚本使用 OCRA 1.2 打包成可执行文件。 脚本结构如下: begin ensure end 问题: 当我在 Windows 上运行可执行文件时,它会打开一个控制台窗
正在像这样使用 ocra 构建 .exe ocra testing.rb -- sample 这里我将''sample''作为参数传递给下面的代码并构建一个exe require "selenium-
我正在尝试使用 Ocra 创建可移植版本的 Ruby 脚本。该脚本依赖于 rmagick,它还需要安装 ImageMagick。 生成的可执行文件在我的计算机上运行,但在其他所有计算机上都失败,除
我正在使用以下命令让 OCRA 使用 Inno Setup 构建安装程序: ocra bin/rails . --output fvc.exe --add-all-c
我制作了一个非常简单的程序,用于添加和组织书籍作者/书名的数组。我在顶部只有一个要求,这是我创建的一个模块。代码都是标准的 ruby,没有 gem 或任何实现。 require_relative
我正在尝试构建一个 .exe 来在 Windows 上执行我的脚本,而无需安装任何 ruby。我正在为此使用 Ocra,但我有一个堆栈跟踪。 另请注意,有两个文件运行整个 sc,我目前使用的是 R
粘贴一个使用 gtk2 gem 启动系统托盘图标的小示例。 #!/usr/bin/env ruby # encoding: UTF-8 require 'gtk2' si=Gtk::StatusIco
我开发了一个非常简单的 Rails 应用程序(它根据数据库中的数据绘制了一些图表)。 现在,我的客户想要在线和离线使用此 Rails 应用程序。 所以我使用 OCRA 从中创建了一个 .exe 文件(
Ocra 无法处理需要“tk”的应用程序 require 'tk' puts 'nope' 用奥克拉 http://github.com/larsch/ocra不起作用(如链接中的一个问题所述)问题:
在此之后: ruby executable won't start , 现在我遇到了以下简单脚本的另一个问题: require 'tk' require 'tkextlib/tile' root =
我正在尝试使用 OCRA 在 Windows 计算机上将 Ruby 程序打包为 .exe。当我试图用它为我的程序创建可执行文件时,它在运行时抛出了一个奇怪的错误。我用一个简单的 Hello World
我有许多用 Ruby 编写的 selenium webdriver 脚本,我使用了 rubyscript2exe 和 ocra gems 试图以“捆绑”可执行文件结束,但无济于事。问题是,我的脚本
我是一名优秀的程序员,十分优秀!