You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何运行PyBuilder构建及发布的脚本?是否支持pyb run命令?

关于PyBuilder的pyb run命令及运行脚本的方法

1. 有没有pyb run命令?

PyBuilder默认并没有内置pyb run命令,但你可以自定义运行任务来实现类似功能,操作起来很简单:

  • 打开项目根目录下的build.py文件
  • 添加自定义任务代码,示例如下:
    from pybuilder.core import task, depends
    
    @task
    @depends("package")  # 可选配置,确保先完成打包流程再运行脚本
    def run(project, logger):
        logger.info("Starting application...")
        # 这里替换成你实际的脚本入口逻辑
        from my_project.main import main
        main()
    
  • 配置完成后,在终端执行pyb run,PyBuilder就会执行这个自定义的运行任务了。

2. 找不到可运行产物的解决方法

你已经完成了测试、打包流程,但看不到直接可运行的产物,核心原因是默认配置下,PyBuilder仅完成了代码打包,没有配置控制台入口点(console scripts)。要生成可直接调用的命令,只需两步:

步骤1:在build.py中配置console scripts

添加以下配置(替换为你的项目实际路径和入口函数):

project.set_property("distutils_console_scripts", [
    "my_app = my_project.main:main"  # 格式:终端命令名 = 包名.模块名:入口函数名
])

这里的my_app是你安装后将在终端使用的命令,my_project.main是你的主模块路径,main是模块里的入口函数。

步骤2:重新构建并安装

执行以下命令完成构建和安装:

pyb clean install

安装完成后,直接在终端输入my_app就能运行你的脚本了。

补充:关于target目录的说明

target目录下的产物主要分为几类:

  • dist/:存放生成的tar.gz包和wheel包
  • build/:编译后的Python字节码文件
  • reports/:测试覆盖率、单元测试报告等文档
    可运行的命令是通过pip安装时,由setup.py中的console scripts配置自动生成的,不会直接出现在target目录里,而是被安装到你的Python环境的bin目录(Linux/macOS)或Scripts目录(Windows)中。

如果不想全局安装,也可以在项目根目录执行pip install -e .进行开发模式安装,这样修改代码后无需重新安装就能直接运行命令。


内容的提问来源于stack exchange,提问作者Andrey Tyukin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 09:24:18