问题标签 [jruby]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
14101 浏览

groovy - Groovy 相对于 Jython 或 Jruby 的优势?

当我可以使用 Jython 或 Jruby 时,为什么还要选择使用 Groovy?该语言是否提供任何固有优势来弥补 Jython 和 Jruby 技能适用于 JVM 之外的母语这一事实?

请记住,我故意让这个问题保持通用性,但如果在特定领域存在任何优势,请毫不犹豫地描述它们。

编辑
澄清一下,如果我在 Jruby 中编写一些代码,我现在可以在某些情况下,如果需要,将代码移到 JVM 之外,或者至少我对 Ruby 有了更好的理解。而 Groovy 技能仅在使用仅存在于 JVM 中的语言时才适用。Jython 和 Jruby 有这个内置的优势,Groovy 必须用什么来弥补这个劣势?

如果 Groovy 没有您发现的任何优势,并且您建议只使用 Jython 或 Jruby,请告诉我。

编辑 2
感谢大家的所有答案,他们中的大多数人都提出了相同的观点,Groovy 与 Java 的集成略好于 Jython 或 Jruby。

跟进
使用 Netbeans 6.5 作为我的 IDE 我发现 Groovy 与 Java 项目的集成比 Jruby 更好。我不确定缺乏集成是否是 Jruby 或 Netbeans 的失败。但是在将它用于一点 Groovy 之后,肯定似乎有了优势。

0 投票
3 回答
850 浏览

java - JRuby 和 Java 对象

请告诉我是否可以执行以下操作:

  • 在 Java 中创建特定类的实例
  • 将其传递给 JRuby 以对其进行处理
  • 继续使用 Java 中的“修改”版本

您可以提供一个小的工作示例吗?

编辑:事实证明,嵌入是实现这一目标的最简单方法。有关嵌入 JRuby的更多信息。

0 投票
6 回答
6885 浏览

ruby-on-rails - Rails Schema 创建问题

我正在使用 Jruby 和 rails 2.2.2。我的问题是我的迁移未正确写入数据库模式。

这是我的迁移:

这是它在 schema.rb 中产生的内容

我有两个问题:

  • 如何'ENGINE=MyISAM'进入架构?
  • 为什么我的执行语句变成了add_index "notes", ["title", "body"], :name => "title"?以及如何强制迁移将其保留为执行语句?

感谢 Christian Lescuyer 的回答。但是,当我尝试这个时,什么都没有改变。我取消了 config.active_record... 行的注释,但是我的架构没有改变。我已经在 jruby 和带有 rails 2.2.2 和 edge rails 的 ruby​​ 1.8.6 上尝试过这个,并且架构没有变化。谁能告诉我我做错了什么?

0 投票
4 回答
1099 浏览

java - Java/JRuby on Rails vs .NET 3.5...感觉我做错了

我打算用 Metro/Hibernate 用 Ja​​va 开发一个 Web 服务(SOAP 到 C++ 客户端),并在它前面有一个用 JRuby on Rails 编写的网站,通过 JRuby 和通常通过数据库连接 Java 模块。我已经编写了一些代码并设置了所有内容。

现在,我听说 .NET 3.5 非常强大,并且在阅读了一些内容后我承认这是真的。但是,放弃 Java 和 RoR 的这种可怕而奇怪的混合体,将所有东西都切换到 .NET 是否有意义?一切:服务、数据库连接(对象的 linq)、web-front、ajax 东西——一切都在一个巨大的 .NET 3.5 解决方案中。

我也希望玩得开心,但不如说,在 C++ 中用于服务器端:)

我知道,凭借 RoR 的力量,它是否属于任何一方并不重要。但是,无论我是为 .NET 还是 Java 设置的,我仍然觉得我做错了,我应该切换到我当前正在使用的非侧。

我在 Web 开发方面的经验非常有限,我只写过一次 ASP.NET Web 服务并支持 Java Web 服务,所以我有一个真正的强迫症,可以在这里选择平台。

0 投票
2 回答
7532 浏览

jruby - 我可以将 Java 类文件导入 JRuby 吗?

文档似乎表明,为了让我将 Java 类导入 JRuby,它们必须位于 JAR 文件中:

“为了在 JRuby 的 jar 文件中使用资源,jar 文件必须位于类路径中,或者您可以使用 require 方法使其可用”(http://wiki.jruby.org/wiki/Calling_Java_from_JRuby#Require_a_jar_file_to_make_resources_in_the_jar_discoverable_within_JRuby

是否可以直接导入 .class 文件?

谢谢!

0 投票
1 回答
689 浏览

ruby-on-rails - JRuby on Rails 部署

我需要在 Mongrel 上托管一个 JRuby on Rails 应用程序。问题是我需要支持相互身份验证。我知道我可以使用 mod_proxy 将它托管在 Apache 后面,使用 mod_ssl 将 cred 或 cred 的一部分作为请求标头传递给 rails。但我希望整个堆栈都是 Java。是否有 Java 应用程序服务器可以进行 mod_proxy + ssl 类型的配置,而无需我安装 Apache。此外,我们需要它独立于平台。IIS 或 Apache+OpenSSL 实际上不是首选的替代方案。

也欢迎任何替代部署配置。

0 投票
2 回答
1529 浏览

ruby - 条件 gem 依赖

是否可以在安装时有条件地设置对 gem 的依赖?这是我的情况,希望能澄清这个问题。

我维护的一个 gem 依赖于 json gem。但是,我经常使用 jruby,它有一个名为 json-jruby 的 json gem 端口。要解决这个问题,我必须为每个依赖项构建两个单独的 gem。我想构建一个 gem,它要么说它依赖于 json 或 json-jruby,要么它在安装时检查并使用正确的依赖项。

有人对此有很好的解决方案吗?

0 投票
1 回答
2400 浏览

ruby - 异步报警信号

我正在寻找alarm(2)Ruby 中 POSIX(或类似)的可移植接口。也就是说,我希望能够设置一个后台计时器,在n秒后向当前进程发送信号。

我从 2006 年的 ruby​​-talk 列表中找到了一些很好的讨论,该列表提供了一个使用dl/import.

我已经查看了这个备受诟病的Timeout模块,尽管它在传统解释器中运行良好,但它不会在 JRuby 下削减它。我的程序是一个使用 Readline 库的小型命令行 shell:

在 JRuby 下,似乎进程阻塞在readline调用中,并且Timeout::Error仅在 (a) 计时器到期和 (b) 用户输入新行之后才被抛出。并且异常没有得到拯救。唔。

所以我想出了这个解决方法:

这是...笨重(让我们有礼貌)。我只是想要alarm(2)!我真的不想为此拖入非核心库(例如终结者)。有没有更好的办法?

编辑:我无法获得另一种选择——创建一个睡眠然后向进程发送信号的线程——在 JRuby 下工作。JRuby 吃信号吗?例子:

JRuby 简单地返回,Ruby 返回预期的“未处理异常”错误。

0 投票
3 回答
3894 浏览

ruby - JRuby 与 YARV 性能 --- 显着差异?

我读过最新版本的 Ruby 解释器 (YARV) 将由于字节码编译而有显着的性能改进。我的问题是有没有人尝试过针对 JRuby 运行它?在 Windows 上执行有什么显着差异吗?

这个链接有一些很好的指标,但大多数都是在 Linux 上运行的...... http://antoniocangiano.com/2007/02/19/ruby-implementations-shootout-ruby-vs-yarv-vs-jruby-vs-gardens-point -ruby-net-vs-rubinius-vs-cardinal/

提前致谢!

托德

0 投票
1 回答
357 浏览

ruby - 如何配置 tomcat 以使用 jruby 处理 rhtml 页面?

如何配置 tomcat 以使用 jruby 处理 .rhtml 页面?

我想我应该弄乱 web.xml 文件,但我不知道如何......

(理想情况下,没有 Rails,只是使用 erb 呈现 rhtml 页面所必需的东西......)