为啥启动rviz没有机器人出现

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥启动rviz没有机器人出现相关的知识,希望对你有一定的参考价值。

参考技术A 如果你只是想打开,在sudo apt-get install ros-hydro-desktop-full之后输命令rosrun rviz rviz就打开了。

但是要想看东西,就必须有其他的rosservice或者rostopic publish一些可用的数据出来给rviz做可视化。

这个过程你需要看ROS非常多的教程,不是简单问知乎就可以明白的。

当我使用节点启动机器人时,为啥 discord.js 模块出现错误?

【中文标题】当我使用节点启动机器人时,为啥 discord.js 模块出现错误?【英文标题】:Why is there an error with discord.js module when i start my bot with node?当我使用节点启动机器人时,为什么 discord.js 模块出现错误? 【发布时间】:2021-10-12 17:00:46 【问题描述】:

最近我的机器人不和谐出现了一个奇怪的错误。每当我运行我的机器人时,discord.js 似乎都会崩溃:

[nodemon] 2.0.12
[nodemon] to restart at any time, enter `rs`
[nodemon] watching path(s): *.*
[nodemon] watching extensions: js,mjs,json  
[nodemon] starting `node ./src/index.js`    
C:\Users\myname\Documents\Loisir\Dev\Discord_Bots\Aura-discord\bot\node_modules\discord.js\src\rest\RESTManager.js:32
    const token = this.client.token ?? this.client.accessToken;
                                     ^

SyntaxError: Unexpected token '?'
    at wrapSafe (internal/modules/cjs/loader.js:1070:16)
    at Module._compile (internal/modules/cjs/loader.js:1120:27)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1176:10)
    at Module.load (internal/modules/cjs/loader.js:1000:32)
    at Function.Module._load (internal/modules/cjs/loader.js:899:14)
    at Module.require (internal/modules/cjs/loader.js:1042:19)
    at require (internal/modules/cjs/helpers.js:77:18)
    at Object.<anonymous> (C:\Users\hugo\Documents\Loisir\Dev\Discord_Bots\Aura-discord\bot\node_modules\discord.js\src\client\BaseClient.js:4:21)
    at Module._compile (internal/modules/cjs/loader.js:1156:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1176:10)
[nodemon] app crashed - waiting for file changes before starting...

这在我更新了我的 discord.js 和 node 模块后开始发生,所以我认为这不是真正的代码问题,而更多的是我搞砸了更新。我是 discord.js 和 node 的新手,所以这很可能非常简单。

我尝试使用 node 而不是 nodemon 来启动它,但我得到了这个:

C:\Users\hugo\Documents\Loisir\Dev\Discord_Bots\Aura-discord\bot\node_modules\discord.js\src\client\Client.js:544
      throw new TypeError('CLIENT_MISSING_INTENTS');
      ^

TypeError [CLIENT_MISSING_INTENTS]: Valid intents must be provided for the Client.
    at Client._validateOptions (C:\Users\hugo\Documents\Loisir\Dev\Discord_Bots\Aura-discord\bot\node_modules\discord.js\src\client\Client.js:544:13)
    at new Client (C:\Users\hugo\Documents\Loisir\Dev\Discord_Bots\Aura-discord\bot\node_modules\discord.js\src\client\Client.js:73:10)
    at Object.<anonymous> (C:\Users\hugo\Documents\Loisir\Dev\Discord_Bots\Aura-discord\bot\src\index.js:5:16)
    at Module._compile (node:internal/modules/cjs/loader:1101:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:79:12)
    at node:internal/main/run_main_module:17:47 
  [Symbol(code)]: 'CLIENT_MISSING_INTENTS'

我对这一切有点迷茫(我的意思是很多),我在互联网上找不到任何东西。

如果有帮助,这是我的依赖项:


  "name": "Aura-discord",
  "version": "0.0.1",
  "description": "Aura is a bot specialized in the creation and management of tournaments on discord.",
  "main": "index.js",
  "scripts": 
    "dev": "nodemon ./src/index.js",
    "start": "node ./src/index.js",
    "build": ""
  ,
  "keywords": [],
  "author": "myName",
  "mail": "hberferf@auradiscord.bot",
  "website": "http://aura-discord.bot",
  "license": "ISC",
  "dependencies": 
    "discord.js": "^13.0.1",
    "mongoose": "^5.13.5",
    "node": "^16.6.1"
  ,
  "devDependencies": 
    "nodemon": "^2.0.12"
  

感谢您抽出宝贵时间阅读本文,如有拼写错误,请原谅。

【问题讨论】:

您的节点版本似乎不支持Nullish coalescing operator?确保使用 v14+ 【参考方案1】:

如果您查看 Discord.js 的 upgrade guide,它会提到它需要 Node.js v16.6 或更高版本。根据Node.green,nullish 合并运算符仅在 Node.js v14.5.0 或更高版本中受支持,因此我认为您的错误是没有正确升级 Node.js。我确实注意到您的依赖项中有node?它应该在引擎中,并且不会升级 Node.js,它只会在您使用错误版本时发出警告。正确安装 Node.js v16.6 或更高版本。

可以在技术上使用node NPM 模块来运行不同版本的 Node.js,但这看起来很奇怪。不过,它确实解决了您的无效合并运算符的问题。升级指南中也解释了第二个错误的原因,确切地说是this section。

【讨论】:

谢谢,就是这样。我没有更新 node.js,我将它作为一个模块安装,但更新了需要它的 discord.js。也感谢意图部分,也帮助了我。

以上是关于为啥启动rviz没有机器人出现的主要内容,如果未能解决你的问题,请参考以下文章

《ROS机器人开发实践》第6.2.4节“在rviz中显示模型”问题总结

当我使用节点启动机器人时,为啥 discord.js 模块出现错误?

Ros疑问汇总

ROS机器人底盘(34)-laser_filters的使用(2)-屏蔽车体干扰

rosrun rviz rviz 详解

ROS数据可视化工具Rviz和三维物理引擎机器人仿真工具V-rep Morse Gazebo Webots USARSimRos等概述