无法从java调用javascript rosnode模块

bbmckpt7  于 2021-07-08  发布在  Java
关注(0)|答案(1)|浏览(423)

我正在尝试创建一个可以与ros服务器通信的web应用程序(java)。因此我使用rosnode模块。我用的是瓦丁。我的问题是我不知道如何调用/执行rosnode基于javascript的文件。


当我尝试调用rosnode.initnode时,出现以下错误:

javax.script.ScriptException: SyntaxError: /home/philipp/webappvaadinros/my-starter-project/src/main/java/ros/webapp/com/nodejs/rosserver.js:3:0 Expected an operand but found let
let rosnodejs = require('/home/philipp/webappvaadinros/my-starter-project/node_modules/rosnodejs/dist/index.js');
^ in <eval> at line number 1

作为脚本引擎,我使用脚本引擎。我应该提到的是,我是javascript新手。有人能帮我吗?

iswrvxsc

iswrvxsc1#

因此,似乎您正在使用java脚本api来调用javascript,而使其出错的语句是 let ,这是相对较新的es6标准的一个特点。所以我假设脚本api根本不支持这一点。你可以像rosnodejs在发布之前那样,尝试对你的代码进行详细描述,或者你也可以看看是否可以更改用于评估脚本api中脚本的node.js版本(如果它甚至使用node.js——抱歉,对该api一点也不熟悉)。
不过,坦率地说,使用rosjava可能比尝试在编程语言之间切换要好。

相关问题