glassfish gem 无法在 Windows 上启动

发布于 2024-10-07 11:08:09 字数 1772 浏览 0 评论 0原文

我正在尝试使用 jruby 和 glassfish gem 在 Windows 服务器上运行 Rails 3 应用程序。我可以使用“rails s”很好地运行该应用程序。这是我的问题:

C:\webapp\mcs>jruby -S glassfish

在开发环境中启动 GlassFish 服务器:0.0.0.0:3000... 将日志消息写入:C:/webapp/mcs/log/development.log。 按 Ctrl+C 停止。

java/util/ServiceLoader.java:207:in `fail': java.util.ServiceConfigurationError: com.sun.enterprise.module.bootstrap.Pla
tformMain: Provider com.sun.enterprise.glassfish.bootstrap.ASEmbedded could not be instantiated: java.lang.IllegalArgume
ntException: URI is not hierarchical (NativeException)
        from java/util/ServiceLoader.java:164:in `access$100'
        from java/util/ServiceLoader.java:353:in `next'
        from java/util/ServiceLoader.java:421:in `next'
        from org/glassfish/api/embedded/Server.java:644:in `getMain'
        from org/glassfish/api/embedded/Server.java:263:in `<init>'
        from org/glassfish/api/embedded/Server.java:61:in `<init>'
        from org/glassfish/api/embedded/Server.java:158:in `build'
        from org/glassfish/api/embedded/Server.java:140:in `build'
        from org/glassfish/scripting/gem/GlassFishMain.java:122:in `startGlassFishEmbedded'
        from org/glassfish/scripting/gem/GlassFishMain.java:298:in `start'
        from c:/jruby-1.5.6/lib/ruby/gems/1.8/gems/glassfish-1.0.2-universal-java/lib/server.rb:146:in `start'
        from c:/jruby-1.5.6/lib/ruby/gems/1.8/gems/glassfish-1.0.2-universal-java/lib/server.rb:146:in `start'
        from C:/jruby-1.5.6/lib/ruby/gems/1.8/gems/glassfish-1.0.2-universal-java/bin/glassfish:55
        from C:/jruby-1.5.6/lib/ruby/gems/1.8/gems/glassfish-1.0.2-universal-java/bin/glassfish:19:in `load'
        from c:/jruby-1.5.6/bin/glassfish:19

我确定这是一个简单的环境设置,有什么建议吗?非常感谢。

I'm trying to run a rails 3 app on a windows server using jruby and glassfish gem. I can run the app fine using "rails s". Here's my probelm:

C:\webapp\mcs>jruby -S glassfish

Starting GlassFish server at: 0.0.0.0:3000 in development environment...
Writing log messages to: C:/webapp/mcs/log/development.log.
Press Ctrl+C to stop.

java/util/ServiceLoader.java:207:in `fail': java.util.ServiceConfigurationError: com.sun.enterprise.module.bootstrap.Pla
tformMain: Provider com.sun.enterprise.glassfish.bootstrap.ASEmbedded could not be instantiated: java.lang.IllegalArgume
ntException: URI is not hierarchical (NativeException)
        from java/util/ServiceLoader.java:164:in `access$100'
        from java/util/ServiceLoader.java:353:in `next'
        from java/util/ServiceLoader.java:421:in `next'
        from org/glassfish/api/embedded/Server.java:644:in `getMain'
        from org/glassfish/api/embedded/Server.java:263:in `<init>'
        from org/glassfish/api/embedded/Server.java:61:in `<init>'
        from org/glassfish/api/embedded/Server.java:158:in `build'
        from org/glassfish/api/embedded/Server.java:140:in `build'
        from org/glassfish/scripting/gem/GlassFishMain.java:122:in `startGlassFishEmbedded'
        from org/glassfish/scripting/gem/GlassFishMain.java:298:in `start'
        from c:/jruby-1.5.6/lib/ruby/gems/1.8/gems/glassfish-1.0.2-universal-java/lib/server.rb:146:in `start'
        from c:/jruby-1.5.6/lib/ruby/gems/1.8/gems/glassfish-1.0.2-universal-java/lib/server.rb:146:in `start'
        from C:/jruby-1.5.6/lib/ruby/gems/1.8/gems/glassfish-1.0.2-universal-java/bin/glassfish:55
        from C:/jruby-1.5.6/lib/ruby/gems/1.8/gems/glassfish-1.0.2-universal-java/bin/glassfish:19:in `load'
        from c:/jruby-1.5.6/bin/glassfish:19

I'm sure it's a simple environment setup thing, any suggestions? Much appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

少女净妖师 2024-10-14 11:08:09

我将讨论 1.0.3.beta.1 代码。如前所述,错误是相似的,但我怀疑它们是同一问题的不同表现。

Glassfish gem 依赖 akuma 库 ( http://java.net/projects/akuma/ ) 来运行进入背景。如果您尝试使用 JRuby 加载它,您会收到如下错误消息:

NameError: cannot link Java class com.sun.akuma.CLibrary, probable missing dependency: Unable to load library 'c': The specified module could not be found.

    from org/jruby/javasupport/JavaClass.java:1054:in `for_name'
    from org/jruby/javasupport/JavaUtilities.java:34:in `get_proxy_class'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/site_ruby/shared/builtin/javasupport/core_ext/object.rb:46:in `java_import'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/gems/1.8/gems/glassfish-1.0.3.beta.1-universal-java/lib/server.rb:56:in `(class Server)'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/gems/1.8/gems/glassfish-1.0.3.beta.1-universal-java/lib/server.rb:53:in `(class GlassFish)'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/gems/1.8/gems/glassfish-1.0.3.beta.1-universal-java/lib/server.rb:52:in `(root)'
    from org/jruby/RubyKernel.java:1041:in `require'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/gems/1.8/gems/glassfish-1.0.3.beta.1-universal-java/lib/server.rb:31:in `require'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/gems/1.8/gems/glassfish-1.0.3.beta.1-universal-java/lib/glassfish.rb:2:in `(root)'
    from org/jruby/RubyKernel.java:1041:in `require'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/gems/1.8/gems/glassfish-1.0.3.beta.1-universal-java/lib/glassfish.rb:36:in `require'
    from (irb):2:in `evaluate'
    from org/jruby/RubyKernel.java:1091:in `eval'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/1.8/irb.rb:158:in `eval_input'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/1.8/irb.rb:271:in `signal_status'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/1.8/irb.rb:155:in `eval_input'
    from org/jruby/RubyKernel.java:1416:in `loop'
    from org/jruby/RubyKernel.java:1194:in `rbCatch'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/1.8/irb.rb:154:in `eval_input'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/1.8/irb.rb:71:in `start'
    from org/jruby/RubyKernel.java:1194:in `rbCatch'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/1.8/irb.rb:70:in `start'

您会看到 JNA 无法加载“C”库。我不知道为什么会这样。

I'm going to talk about the 1.0.3.beta.1 code. As mentioned, the error is similar,but I suspect they are different manifestations of the same issue.

Glassfish gem relies on akuma library ( http://java.net/projects/akuma/ ) to go into the background. If you tried to load this it with JRuby, you get the error messages like these:

NameError: cannot link Java class com.sun.akuma.CLibrary, probable missing dependency: Unable to load library 'c': The specified module could not be found.

    from org/jruby/javasupport/JavaClass.java:1054:in `for_name'
    from org/jruby/javasupport/JavaUtilities.java:34:in `get_proxy_class'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/site_ruby/shared/builtin/javasupport/core_ext/object.rb:46:in `java_import'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/gems/1.8/gems/glassfish-1.0.3.beta.1-universal-java/lib/server.rb:56:in `(class Server)'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/gems/1.8/gems/glassfish-1.0.3.beta.1-universal-java/lib/server.rb:53:in `(class GlassFish)'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/gems/1.8/gems/glassfish-1.0.3.beta.1-universal-java/lib/server.rb:52:in `(root)'
    from org/jruby/RubyKernel.java:1041:in `require'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/gems/1.8/gems/glassfish-1.0.3.beta.1-universal-java/lib/server.rb:31:in `require'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/gems/1.8/gems/glassfish-1.0.3.beta.1-universal-java/lib/glassfish.rb:2:in `(root)'
    from org/jruby/RubyKernel.java:1041:in `require'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/gems/1.8/gems/glassfish-1.0.3.beta.1-universal-java/lib/glassfish.rb:36:in `require'
    from (irb):2:in `evaluate'
    from org/jruby/RubyKernel.java:1091:in `eval'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/1.8/irb.rb:158:in `eval_input'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/1.8/irb.rb:271:in `signal_status'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/1.8/irb.rb:155:in `eval_input'
    from org/jruby/RubyKernel.java:1416:in `loop'
    from org/jruby/RubyKernel.java:1194:in `rbCatch'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/1.8/irb.rb:154:in `eval_input'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/1.8/irb.rb:71:in `start'
    from org/jruby/RubyKernel.java:1194:in `rbCatch'
    from c:/Users/asari/Documents/Development/jruby/lib/ruby/1.8/irb.rb:70:in `start'

You see that JNA cannot load the "C" library. I'm not sure why that is.

不一样的天空 2024-10-14 11:08:09

我在使用以下每个设置运行 Rails 3.0.3 应用程序时遇到了同样的问题:

这些不起作用:

windows、jruby-1.6.0.RC1、glassfish-1.0.3.beta。 1-universal-java

窗口,jruby-1.6.0.RC1,glassfish-1.0.3-universal-java

窗口,jruby-1.6.0.RC1,glassfish-1.0.2-universal-java

窗口,jruby-1.5.6 、 glassfish-1.0.3.beta.1-universal-java

窗口、jruby-1.5.6、glassfish-1.0.2-universal-java

窗口、jruby-1.5.3、glassfish-1.0.3.beta.1-universal -java

此设置有效:

windows、jruby-1.5.3、glassfish-1.0.2-universal-java

jjnevis 表示它也适用于 jruby-1.5.5 和 glassfish 1.0.2,因此不适用于非常确定这是否是 jruby 1.5.5 和 1.5.6 之间引入的错误,或者是 glassfish gem 1.0.2 和 1.0.3 之间引入的错误。但希望这可以帮助其他人指出它..我要去睡觉了抱歉..明天可能会再看一下

I ran into the same issue running a rails 3.0.3 app with each of these setups:

These don't work:

windows, jruby-1.6.0.RC1, glassfish-1.0.3.beta.1-universal-java

windows, jruby-1.6.0.RC1, glassfish-1.0.3-universal-java

windows, jruby-1.6.0.RC1, glassfish-1.0.2-universal-java

windows, jruby-1.5.6, glassfish-1.0.3.beta.1-universal-java

windows, jruby-1.5.6, glassfish-1.0.2-universal-java

windows, jruby-1.5.3, glassfish-1.0.3.beta.1-universal-java

This setup worked tho:

windows, jruby-1.5.3, glassfish-1.0.2-universal-java

jjnevis says it works on jruby-1.5.5 and glassfish 1.0.2 as well so not quite sure if it's a bug introduced between jruby 1.5.5 and 1.5.6 or a bug introduced in the glassfish gem between 1.0.2 and 1.0.3. But hopefully that helps someone else pin point it down.. I'm headed to bed sorry.. Might have another look at it tomorrow

面犯桃花 2024-10-14 11:08:09

我通过简单地退回到 jruby-1.5.5 来完成此工作。我打算写一篇博客文章来介绍我是如何让这一切运行起来的,因为这有点像一场噩梦,但目前看来确实是团结一致的。我的设置是:

windows server 2003 R2、rails 3.0.3、jruby 1.5.5、glassfish gem 1.0.2

注意:我认为此修复解决了 jruby-1.5.6 中的问题,但尚未解决编译发行版中的问题,所以我只是决定退出:
https://github.com/jruby/jruby/commit/621bce3056f71cc9cd0e1b8aa59cecae1fc15e45

I got this working by simply backing out to jruby-1.5.5. I intend to do a blog post on how I got this all running, because it was a bit of a nightmare, but it does appear to be holding together at the moment. my setup is:

windows server 2003 R2, rails 3.0.3, jruby 1.5.5, glassfish gem 1.0.2

NOTE: I think this fix solves the problem in jruby-1.5.6 but not yet in the compiled distro, so I just decided to back out:
https://github.com/jruby/jruby/commit/621bce3056f71cc9cd0e1b8aa59cecae1fc15e45

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文