Netbeans和Rails:有没有办法让netbeans中的Run选项也启动think_sphinx?
问题描述:
我不想让狮身人面像始终在我的开发机器上运行。当我通过netbeans运行我的应用程序时,我想要一种自动执行rake thinking_sphinx:start
的方法。有没有办法做到这一点Netbeans和Rails:有没有办法让netbeans中的Run选项也启动think_sphinx?
[也 - 我使用Windows]
思考狮身人面像需要作为一个单独的进程中运行。
答
您将需要一个名为PsExec的第三方程序来执行此操作。否则,您将无法在Windows上使用Ruby启动后台进程。
首先下载PsExec here。解压(至少)psexec.exe
并手动运行一次 - 您必须同意许可证: - /。
之后,下面的行添加到您的Rails应用程序的script/server
:
system 'PATH_TO_PSEXEC/psexec -d rake.bat'
现在创建rake.bat
与命令并行运行到您的服务器。将具有以下内容的文件放入您的Rails应用程序的根目录中。
rake thinking_sphinx:start
此行应该做的伎俩,但它可能会失败,例如,当NetBeans的JRuby版本与安装在主机上的Ruby不同时。或者如果没有安装Ruby。在这种情况下,你应该叫耙使用JRuby的完整路径:
"PATH_TO_NETBEANS/ruby2/jruby-1.2.0/bin/jruby" "PATH_TO_NETBEANS/ruby2/jruby-1.2.0/bin/rake" thinking_sphinx:start
如果现在启动服务器,一个额外的Windows命令行弹出与运行rake任务。
不用说,您不应该将代码添加到生产服务器上的script/server
。