首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向colcon构建中添加非python文件。

向colcon构建中添加非python文件。
EN

Stack Overflow用户
提问于 2022-06-09 17:29:26
回答 1查看 140关注 0票数 1

使用colcon构建我的工作区时,在工作区中的sub_package中的目录" OSM“中找到的一些OSM文件在构建的空间中找不到。所以当我进入安装空间时,文件就不存在了。如果我把它放到setup.py中,我不知道该如何做。

我尝试将它放在setup.py文件中的setup()的参数中:

代码语言:javascript
复制
setup(
    name=package_name,
    version='0.0.0',
    packages=[package_name, submodules, osm],
    data_files=[
        ('share/ament_index/resource_index/packages',
            ['resource/' + package_name]),
        ('share/' + package_name, ['package.xml']),
        (os.path.join('share', package_name), glob('launch/*.launch.py')),
        ('.package_name/sub_package', glob('OSM_folder/*.osm')),
    ],
.
.
.
) # close setup()

但这不起作用。

我用的是ROS2银河。

目录结构:

代码语言:javascript
复制
package_name
┃
┣━━━━setup.py
┣━━━━package.xml
┣━━━━resource/
┣━━━━launch/
┗━━━━package_name
     ┗━sub_package_name
       ┗━OSM
         ┣━__init__.py
         ┗━some_osm_files.osm

我在构建的工作区中有OSM目录,但是它只有init.py文件。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-10 14:14:43

我解决了。我不知道这是否是正确的做法,或是否有另一种更好/适当的方式,但我们开始。

在setup.py文件中,我在data_files变量中添加了行(os.path.join('lib/python3.8/site-packages/package_name/sub_package/OSM'),glob(package_name+'/sub_package_name/OSM/*.osm')),

新行的第一部分,即os.path.join('lib/python3.8/site-packages/package_name/sub_package_name/OSM'),在构建工作区后确定安装文件夹中文件的新位置。

第二部分,即glob(package_name+'/sub_package_name/OSM/*.osm'),确定项目工作区中文件的原始位置。

结果是,它从第二部分中提到的位置获取文件,并将它们放在第一部分提到的位置。

结果块是:

代码语言:javascript
复制
setup(
    name=package_name,
    version='0.0.0',
    packages=[package_name, submodules, osm],
    data_files=[
        ('share/ament_index/resource_index/packages',
            ['resource/' + package_name]),
        ('share/' + package_name, ['package.xml']),
        (os.path.join('share', package_name), glob('launch/*.launch.py')),
        (os.path.join('lib/python3.8/site-packages/package_name/sub_package_name/OSM'), glob(package_name+'/sub_package_name/OSM/*.osm')),
    ],

.
.
.
)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72564377

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档