- 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/
在干净的 Debian 系统上——没有安装 Rubygems——我想安装一个带有 Puppet 的 Rubygem 包(版本 2.7.13)。所以包有“gem”作为包提供者。 到目前为止,这是我的 l
您好,我希望得到一些安装 rubygems 的帮助。这就是我尝试时发生的情况。 “ruby-full”已经安装。我该如何解决?这是什么问题? $ sudo apt-get install ruby
我两天前刚刚上传了一个 RubyGem。它的作用不大,但它是部分 Facebook Graph API 的包装器。今天怀着好奇,查看了一下gem的下载量,居然在300左右,高得惊人。我想知道机器人是否
我遇到了与 Gem::LoadError: Could not find rubygems-bundler (>= 0) amongst 类似的问题我假设那里提到的错误已经修复。 我正在使用 bund
我公司的公司代理似乎干扰了 https rubygems.org 的连接(但不是 http 连接),当我尝试从默认 gem 源 https://rubygems.org 安装 gem 时导致失败.出于
$ bundle The source :rubygems is deprecated because HTTP requests are insecure. Please change your s
$ bundle The source :rubygems is deprecated because HTTP requests are insecure. Please change your s
警告:找不到 RubyGems 1.2+ 索引: RubyGems 将恢复到降低性能的遗留索引。 如果有人能帮我解决这个问题,我会给他们 50.00 美元 我用尽了谷歌,重新安装了所有东西。 我只想做
我从 Maven 收到一条缺少 gem 的消息: http://production.s3.rubygems.org/gems/rb-inotify-0.9.6.gem http://s3.amazo
我刚刚安装了一个带有 Ubuntu 10.4 和 Ruby1.9.1 的新虚拟机 (VirtualBox)。我已经获得了 RUbyGems1.9.1 的软件包,但是当我执行 gem --version
遇到与this post相同的问题,除了不幸的是我不认为解决方案是一样的。 我收到此错误消息: Rails requires RubyGems >= 0.9.4. Please install Rub
我正在尝试编译我的第一个 gem 并将其推送到 rubygems.org。它不断抛出错误,说我无法推送到 https://rubygems.org : gem build simplesms.ge
我正在尝试编译我的第一个 gem 并将其推送到 rubygems.org。它不断抛出错误,说我无法推送到 https://rubygems.org : gem build simplesms.ge
关于如何更新 rubygems 有点困惑。过程不断变化(或者至少我从互联网上得到了相互矛盾的信息)。 $ gem outdated rubygems-update (1.8.10 < 1.8.11
运行 bundle 安装时,我收到以下消息: Rubygems 2.0.14 is not threadsafe, so your gems will be installed one at a ti
我收到错误:警告:您正在将 Rubygems 2.0.3 与 Spring 一起使用。尝试运行 Rails 控制台时至少升级到 Rubygems 2.1.0。 我该如何更新它? 最佳答案 尝试运行 g
我试图在 XP 上构建 capybara-webkit。我关注了this操作说明。它说要进行捆绑安装: $ cd ruby193\capybara-webkit $ bundle install
我正在运行 rails 2.3.5 版和 rubygems 1.3.6 版,当我编写脚本/服务器时出现此错误 Rails 要求 RubyGems >= 1.3.2。请安装 RubyGems 并重试
我刚刚开始学习 Ruby on Rails,并且正在将它安装到 OSX El Capitan 上。 我已经使用 rbenv 完全安装了 Ruby on Rails。我能够通过运行来设置我的第一个应用程
我正在建立自己的 Github 页面。我想在推送到远程仓库之前在本地机器上测试站点。我按照 https://help.github.com/en/github/working-with-github-
我是一名优秀的程序员,十分优秀!