标签: jruby

将JRuby on Rails应用程序部署到Tomcat的最佳方法是什么?

我正在研究如何将Ruby on Rails应用程序(在JRuby上运行)部署到Tomcat实例进行测试.

tomcat实例正在我可以SSH到的Solaris服务器上运行.我已经看过使用Capistrano,但似乎没有太多关于使用它来部署到Tomcat,甚至在JRuby下运行它,并且由于Windows/JRuby环境我一直在Capistrano中遇到错误我的电脑正在运行(是的,这是公司 - 不是我的选择,但我必须忍受它).

我正在使用warble来构建.war文件,一旦我手动复制并部署它,应用程序就会部署并运行正常.我想要更简单,更自动化的东西来实现它.

有人这样做过吗?网络上的文档似乎很薄.

ruby tomcat capistrano ruby-on-rails jruby

10
推荐指数
2
解决办法
5304
查看次数

Rails架构创建问题

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

这是我的迁移:

class CreateNotes < ActiveRecord::Migration
  def self.up
    create_table(:notes, :options => 'ENGINE=MyISAM') do |t|
      t.string :title
      t.text :body

      t.timestamps
    end

    execute "alter table notes ADD FULLTEXT(title, body)"

end
Run Code Online (Sandbox Code Playgroud)

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

create_table "notes", :force => true do |t|
  t.string   "title"
  t.text     "body"
  t.datetime "created_at"
  t.datetime "updated_at"
end

add_index "notes", ["title", "body"], :name => "title"
Run Code Online (Sandbox Code Playgroud)

我有两个问题:

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

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

migration ruby-on-rails jruby activerecord-jdbc

10
推荐指数
3
解决办法
6261
查看次数

用于管理CSS爆炸和/或重用的Java库?

Java问:我喜欢CSS用于简单的网页,但是当涉及现实世界的网站时,它会厌恶它,因为你得到了css爆炸和大量的重复.

我很想使用Sass和Compass,但它们是Ruby程序,很可能需要一些有趣的Maven + JRuby才能为Java Web app dev工作.如果您使用Eclipse或支持与正在运行的Web应用程序同步的任何IDE,这也会很困难.

对于地狱中的CSS,还有一个更好的替代方案是Java吗?

css java maven-2 jruby sass

10
推荐指数
1
解决办法
2338
查看次数

Java后端和Rails前端

我有一个创业公司考虑建立一个Java后端和一个Rails前端.Java后端将负责为数据库创建缓存层并提供其他附加服务.Rails前端主要用于创建webapp和监视工具.

有哪些初创公司/公司使用这种设置?在开发速度,部署,可伸缩性和集成方面有哪些问题?

(对我来说有用的是个人经验或非正式的案例研究.我想优先解决Grails或JRuby等替代方案的答案,除非事实证明这是等式中的一个重要部分)

谢谢!

java grails ruby-on-rails jruby startup

10
推荐指数
2
解决办法
5518
查看次数

如何在Eclipse中为Java,Scala和JRuby打开一个项目?

我能够让所有三个人在"Scala项目"中运行一个Hello World,并以.java文件为主.问题是它是从我没有使用的"Java项目"中提取的,尽管我的"Scala项目"中有JRE系统库.以下是我正在做的有助于理解的代码......

JRuby.java

import org.jruby.embed.ScriptingContainer;
public class JRuby {                                              

    public static void main(String[] args) 
    {                     
        System.out.println("Java, Scala and Ruby using the JRE.\n"); 

        ScriptingContainer container = new ScriptingContainer(); 
        container.runScriptlet("puts 'This is JRuby code in .java file!'");

        new ScallaHello().hello(); 

        System.out.println("This is standard Java Code in .java file!"); 
    }
}
Run Code Online (Sandbox Code Playgroud)

ScallaHello.scala

class ScallaHello {

    def hello() { 
        println("This is a Scala Method in .scala file, object set in .java file")
    }

    System.out.println("This is Java Code in .scala file!")
    println("This is Scalla …
Run Code Online (Sandbox Code Playgroud)

java eclipse scala jar jruby

10
推荐指数
1
解决办法
1205
查看次数

Rails应用程序连接池大小,避免最大池大小问题

我正在运行JRuby on Rails应用程序.我在日志中随机看到了很多内容:

The max pool size is currently 5; consider increasing it

我知道我可以增加配置中的最大池大小来解决这个问题.我想解决的问题是要了解最佳数量应该是多少.我试图避免连接的争用问题.显然将这个数字设置为令人讨厌的大小也无济于事.

是否有一般协议可以了解您的应用程序最佳池大小设置?

ruby activerecord ruby-on-rails jruby

10
推荐指数
1
解决办法
3564
查看次数

使用Clojure的gem中提供的JRuby类

我很简单地需要在Clojure中使用Ruby类.复杂的因素是该类是在宝石中提供的.最佳方法是按照以下方式设置我的Leiningein项目文件:

(project foo ""
  ...
  :dependencies [[clojure ...]
                 [jruby ...  ]])
Run Code Online (Sandbox Code Playgroud)

同样,我更愿意只检查gem及其依赖项到本地repo目录中.因此,从我理想的用法是:

(ns bar.baz
  (require [jruby.something :as jruby])

(def obj (jruby/CreateAnInstance "TheGemClass"))

(def result (jruby/CallAMethod obj "method_name" some args))
Run Code Online (Sandbox Code Playgroud)

谢谢.

ruby gem interop jruby clojure

10
推荐指数
1
解决办法
721
查看次数

为什么logstash启动/加载需要这么长时间?

编辑:我改变了标题,因为问题不是我最初的想法.事实上,logstash需要一分多钟才能启动,这可能被误解为"沉默"......


我正在尝试使logstash运行,所以我按照官方网站上的说明进行独立安装:http://logstash.net/docs/1.1.4/tutorials/getting-started-simple

基本上,我得到了logstash-1.1.4-monolithic.jar文件,然后构建一个非常简单的配置文件:( example.conf)

input {
  stdin { type => "stdin-type"  }
}
output {
  stdout { debug_format => "json" }
}
Run Code Online (Sandbox Code Playgroud)

但是当我运行logstash时,什么都没有出来(我在STDIN中键入随机文本,但没有得到响应):

# java -jar logstash-1.1.4-monolithic.jar agent -f example.conf
Test
toto
hey ??? Wakeup !!!
^C
Run Code Online (Sandbox Code Playgroud)

(有关信息:Java版本是正确的)

# java -version
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) Client VM (build 20.1-b02, mixed mode, sharing)
Run Code Online (Sandbox Code Playgroud)

拜托,有人能告诉我我错过了什么吗?

java jar jruby logstash

10
推荐指数
1
解决办法
6319
查看次数

使用JRuby的Rails控制台问题:没有提示字符,没有选项卡完成,箭头键错误等

我在JRuby下的Rails控制台遇到了各种各样的问题,包括

  • 没有提示字符
  • Tab 完成不起作用(插入文字标签)
  • 向上/向下箭头不会浏览历史记录(^[[A^[[B分别插入)
  • 左/右箭头不移动光标(^[[D^[[C分别插入)
  • Home/ Endkeys不将光标移动到行的开头/结尾(分别代替1~4~插入); Ctrl+ a/ Ctrl+ e虽然工作
  • Ctrl+ c杀死控制台而不是杀死我正在进入的线路
  • Ctrl+ d没有任何影响,直到我点击Enter(然后执行我在Ctrl+ dEnter我的Unix shell 之间输入的任何内容).

我从rvm安装了我的JRuby解释器,如下所示:

rvm install jruby-1.6.8 --1.9
Run Code Online (Sandbox Code Playgroud)

我的Rails项目是使用Bundler(而不是rvm gemsets)管理的,所以我使用我的Rails控制台bundle exec rails c.有趣的是,原始irb以及bundle exec irb没有上述大部分问题,除了Home/ Endkeys和Ctrl+ c需要一个Enter之前我得到一个新的提示行.

我可以用准系统Rails复制这个问题Gemfile:

source …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails jruby rails-console

10
推荐指数
2
解决办法
1525
查看次数

JRuby 1.7.1和PsychParser错误解析UTF-8 YAML文件(Rails 3.2.8)

在我们的JRuby/Rails项目中,我们使用i18ngem,并支持日语和英语.我们的config/locales.ja.yml文件是UTF-8,没有任何BOM.

运行Rails 3.2.9JRuby 1.7.1,我们现在看到以下错误:

% jruby -S rake spec:models

 Psych::SyntaxError: (C:/Projects/foobar/trunk/config/locales/ja.yml): 
   expected <block end>, but found Scalar while parsing a block 
   mapping at line 7 column 33

   parse at org/jruby/ext/psych/PsychParser.java:213
   ... 
Run Code Online (Sandbox Code Playgroud)

解析ja.yml文件的YAML的这个错误现在在我们的Windows XP和Linux开发环境中发生,并且当我们为JVM显式设置以下系统参数时,似乎只会消失:

-Dfile.encoding=utf-8
Run Code Online (Sandbox Code Playgroud)

谁能告诉我为什么会这样JRuby 1.7.1
我没有看到这个1.6.81.7.0.

yaml jruby jrubyonrails psychparser

10
推荐指数
1
解决办法
789
查看次数