使用Java从Web应用程序执行R脚本

使用Java从Web应用程序执行R脚本,java,r,rscript,Java,R,Rscript,我已经用Struts创建了一个Web应用程序,我想从Java类中执行和编写脚本 我的脚本位于以下目录中:WebContent/script 名称是:rScript.R 我已经检查过一种执行方法是使用以下内容: Runtime.getRuntime().exec("WebContent/script/rScript.R") 但这不起作用。有人知道我该怎么说这个句子吗 干杯。试试看 Process process =Runtime.getRuntime().exec("RScript C:/...

我已经用Struts创建了一个Web应用程序,我想从Java类中执行和编写脚本

我的脚本位于以下目录中:WebContent/script 名称是:rScript.R

我已经检查过一种执行方法是使用以下内容:

Runtime.getRuntime().exec("WebContent/script/rScript.R")
但这不起作用。有人知道我该怎么说这个句子吗

干杯。

试试看

Process process =Runtime.getRuntime().exec("RScript C:/.../WebContent/script/rScript.R")
process.waitFor();

您需要调用运行脚本的可执行程序,而不仅仅是脚本本身:
Runtime.getRuntime().exec(“RScript WebContent/script/RScript.R”)
感谢您的响应,但结果是下一个
无法运行程序“RScript”:CreateProcess error=2,系统找不到指定的文件
是否必须在脚本中添加内容?在unix(Linux/Mac)计算机上,Rscript区分大小写,您可能没有将其作为环境变量。如果,不要尝试:
Runtime.getRuntime().exec(“/full/path/to/Rscript/full/path/to/WebContent/script/Rscript.R”)
我真的不知道Rscript的方向是什么。它是否与我的脚本路径相同?它是一个可执行程序Rscript.exe,与Rterm.exe、Rgui.exe、R.exe一起驻留在R bin目录中。每个命令行都需要运行它的可执行程序。你的脚本只是一个论点。谢谢你的回复。但comand的结果是:
无法运行程序“WebContent/script/rScript.R”:CreateProcess error=193,%1不是有效的Win32应用程序
如果完整路径有空格/特殊字符,请在
exec
字符串中用转义双引号括起。