文章目录
- 预准备环境
- rosjava_bootstrap
- 坏消息
- 好消息
- 环境安装
- docker安装
- rosjava_bootstrap仓库
- rosjava_center仓库
- 修改rosjava_bootstrap代码
- 拉取docker镜像
- 放置自己的自定义消息
- 启动docker编译
预准备环境
rosjava_bootstrap
rosjava_bootstrap是将自定义的ROS消息生成java代码的插件,目前官方只维护到kinetic版本,也就是说我们需要将这个ROS环境设置为kinetic版本。
坏消息
- 需要安装一个Ubuntu16.04版本的系统
- rosjava_bootstrap的maven仓库已经失效了,尽管你搭建了kinetic版本的ROS环境,100%无法编译出相应的jar包
好消息
- ROS官方提供的相应的docker镜像,我在上面安装了rosjava
- rosjava_bootstrap的maven仓库我已经修改了,可以改成自定义的URL
环境安装
docker安装
首先安装docker,我用的是window+ WSL,所以我下载的是docker-desktop版本
docker下载地址
rosjava_bootstrap仓库
我修改过的仓库github链接:https://github.com/ceoifung/rosjava_bootstrap
# 新建一个工作空间
mkdir ~/catkin_ws/src -p
cd ~/catkin_ws/src
# clone仓库
git clone https://github.com/ceoifung/rosjava_bootstrap
rosjava_center仓库
这个仓库是在rosjava_bootstrap编译出jar包所需的各种依赖
-
预览地址:https://ceoifung.github.io/rosjava_center/
-
仓库地址:https://github.com/ceoifung/rosjava_center
首先把仓库下载下来
git clone https://github.com/ceoifung/rosjava_center
仓库内容如下:
然后在下载的rosjava_center目录启动一个http目录浏览服务,如果装了nodejs的,可以安装一个anywhere。没有的话,可以IIS或者NGINX或者别的什么,只要能作为http目录浏览服务器,能够通过网络下载上面的内容就行。以下是我用window IIS启动的一个目录浏览服务
修改rosjava_bootstrap代码
在rosjava_bootstrap代码中,我默认将所有的maven地址设置成了本地的http文件目录服务器的地址
http://192.168.3.109/rosjava
全局搜索仓库,将上面的地址修改为rosjava_center的目录浏览服务地址,比如我上面的地址是
http://192.168.3.109/rosjava,那我就不用改了
拉取docker镜像
默认已经集成好了一个rosjava的docker镜像。可以通过如下命令,拉取我制作的镜像
docker pull ceoifung/rosjava-ceoifung
放置自己的自定义消息
上面步骤完成之后,可以将自己的自定义ROS消息,放到catkin_ws/src目录中
rosjava_bootstrap也需要放到catkin_ws工作空间,注意不要漏掉了
启动docker编译
通过如下命令启动docker
# 启动docker,挂载catkin_ws目录到docker的home目录下
docker run --rm -it -v ~/catkin_ws:/home/catkin_ws ceoifung/rosjava-ceoifung:latest /bin/bash
# 进入镜像之后
cd /home/catkin_ws
catkin_make
# 编译成功之后,就可以在devel目录下找到编译出来的jar文件了
编译成功之后,就可以在devel目录下找到编译出来的jar文件了
如果编译失败,检测一下自己的rosjava_center 目录浏览服务是否有效,每个文件是否可以通过http下载下来