2

ROS 的文档很糟糕。

具有讽刺意味的是,ROS 的 Groovy 和 ROSJava 版本的创建是为了允许 Windows 等平台上的开发人员利用出色的机器人 SDK,而所有安装说明仍然面向 linux/ubuntu 用户。

ROSJava核心文档说:

TODO: write a guide for a strictly java installation.

我尝试按照此处关于 Google Code 项目的说明进行操作,但是由于所有说明都假设我正在运行 Ubuntu,因此作为传统的 Windows/Web 开发人员,我很难自己将其转换为 Windows 说明。

该链接也断开到 GIT 存储库,它已移至 github:https ://github.com/rosjava/rosjava_core.git

如果您正在寻找rosws 文档,请点击此处。另一个断开的链接:http ://www.ros.org/doc/independent/api/rosinstall/html/

现在,想要一个用于编码的通用 IDE,我选择了 Eclipse,因为它可以处理 Python、Java 和 c++。现在我不知道如何使用 Gradle 和 Maven 构建这个项目——哎呀,我什至不确定我是否应该构建它。

是否有针对 Windows 上的 ROSJava 的权威安装/构建教程?如果不是这样,我认为如果有人可以创建一个演练来帮助开发人员在机器人技术中制作他们的第一个“Hello World”,这将极大地造福社区。我以前做过一些处理和一些轻量级的 Java,但没有什么太严重的。该手册应该假设您是 Java、ROS 和所有依赖项/构建助手/编译器的新手。我觉得来自Google CodeROSWiki的所有说明都假设您熟悉许多工具和依赖项,或者了解 ROSJava 与 Groovy 与 Linux 实现的历史背景。对于 C#.NET、Objective C 或 Javascript/Web 开发人员来说,许多必要的工具都是不走寻常路的。

此外,一个很大的缺点是 ROS Wiki 中完全缺少 ROS SDK 的预编译版本。“页面不存在”所以,我们新人还必须安装 10-16 个依赖项来编译内核(更不用说弄清楚如何配置和使用它们)。

此外,在 Wiki 中命名的构建脚本甚至还不存在。

目前,我什至还没有开始遇到这样的问题:Gradle Eclipse Plugin

4

1 回答 1

0

虽然 ROS 文档在过去几年中总体上有所改进,但 ROS Java 文档目前甚至没有那么详细。

如果您不使用自定义消息,使用 ROS_JAVA 实际上就像使用任何其他依赖项一样简单。ROS_JAVA 实际上可以分为两部分。

  1. 用于创建您自己的服务器/客户端和发布者/订阅者的 API
  2. 纯Java roscore

该 API 非常适合访问和使用以任何语言编写的基于 ROS 的服务/主题/操作。在不支持 C++ ROS 的情况下,纯 Java roscore 可用于测试或安装在任何运行 Java 的系统中。但是它不如 ROS C++ 完整。

如果您使用自定义消息,您可以轻松添加所需的依赖项。以下配置应该在 gradle 中工作。

repositories {
    repositories {
        mavenCentral()
         maven {
            url "https://github.com/rosjava/rosjava_mvn_repo/raw/master"
        }
    }
}
dependencies {
    implementation 'org.ros.rosjava_core:rosjava:[0.3,0.4)'

    implementation 'org.ros.rosjava_bootstrap:message_generation:0.3.3'
    implementation 'org.ros.rosjava_messages:std_msgs:0.5.11'
}

这是我在这里发布的一个简单的“Hello World”纯 Java 项目的一部分。对于仅在 Java /ROS Java 中编程,您不需要在 windows 中安装 ROSjava。(这也是我写的一篇文章,试图提供一些关于这个问题的快速说明。)如果您还需要在没有安装 ROS 的情况下编译消息,那么您也可以通过 java 手动执行此操作。

最后值得注意的是,ROS Noetic 可以安装在 windows 中。虽然这不是使用 ROS java 进行开发的要求。

于 2021-07-02T11:48:08.407 回答