在部署在glassfish中的Sinatra应用程序中运行tux

时间:2012-03-26 22:03:24

标签: ruby console glassfish sinatra jruby

我正在开发一个rails应用程序,它使用少数Sinatra服务,每个服务都有自己的数据库。我们正在将我们的服务和应用程序转移到Glassfish。我们可以将我们的Sinatra应用程序捆绑到.war包中,并将其部署到远程Glassfish服务。我们要做的一件事是能够在每个服务中运行Tux,这样我们就可以直接与对象交互(用于调试)。我想使用glassfish / domains / domain1 / applications / {app} /目录中gems / gems目录中包含的gem。我尝试编写一个基于此的bash脚本:https://gist.github.com/1986553/8e2d9ba892229ab076ad81ee88472d951b94282e,最终结果如下:

if [ $# -lt 1 ]
then
  echo "Usage:"
  exit
else
  DIR="$( cd "$( dirname "$0" )" && pwd )"
  echo $DIR 
  export GEM_HOME="${DIR}/gems/gems"
  export GEM_PATH=$GEM_HOME
  echo $GEM_PATH
  app_runner="java -cp lib/jruby-core-1.6.4.jar:lib/jruby-stdlib-1.6.4.jar org.jruby.Main -r ../META-INF/init"  # relative to app.war/WEB-INF/lib

  bundle exec tux
fi

似乎没有接受GEM_PATH的更改。我把这种方法放在一边,只是安装在rvm gemset中必要的宝石中,并设置我的环境来使用它。然后我能够运行bundle exec tux,但无法连接到数据库,而无法处理我在Glassfish服务器上设置的所有细节。我希望能够使用我用来连接我的Glassfish服务器的jndi连接器。

还有其他人做过这些事情和/或有指针吗?感谢

0 个答案:

没有答案