我使用Click在python中创建CLI。这是我的入口点脚本:
entry_points='''
[console_scripts]
noo=noo.noodle:downloader
''',
我创建了一个包,我在import noodle
文件中添加了__init__.py
,以便它可以导入包含函数downloader()
的文件noodle - 这需要由entry_point
脚本。但是当我安装setup.py
时,我在终端中运行ImportError: No module named noo.noodle
时出现错误:noodle --help
答案 0 :(得分:1)
直接来自documentation on click.pocoo.org:
import click
@click.command()
def cli():
"""Example script."""
click.echo('Hello World!')
from setuptools import setup
setup(
name='yourscript',
version='0.1',
py_modules=['yourscript'],
install_requires=[
'Click',
],
entry_points='''
[console_scripts]
yourscript=yourscript:cli
''',
)
如果CLI应用程序中有多个命令,我通常会创建一个这样的点击组:
import click
@click.group()
@click.option('--debug/--no-debug', default=False, help='My test option.')
def cli(debug):
"""Add some initialisation code to log accordingly for debugging purposes or no"""
pass
@cli.command()
def configure():
"""Configure the application"""
pass
setup.py
文件看起来与点击文档中的文件完全相同。