私のフラスコアプリケーションを実行するためのエントリポイントを取得しようとしています。setup.pyのエントリポイントが動作しない
私は、ディレクトリ構造にその原因を考える:
my_app
- __init__.py
- app.py
- setup.py
- etc..
私のsetup.pyファイル:
from setuptools import setup, find_packages
import os.path
def read_requirements(pathname):
with open(pathname) as f:
return [line for line in (x.strip() for x in f) if not line.startswith('#')]
def project_path(*names):
return os.path.join(os.path.dirname(__file__), *names)
setup(
name='my_app',
version='0.1.0',
install_requires=read_requirements(os.path.join(os.path.dirname(__file__), 'requirements.txt')),
test_suite='nose.collector',
entry_points={
'console_scripts': [
'START_ME=app:run',
],
},
classifiers=["Programming Language :: Python :: 2.7"],
description=__doc__,
long_description='\n\n'.join(open(project_path(name)).read() for name in (
'README.md',
)),
zip_safe=False,
include_package_data=True,
packages=find_packages(),
)
私はfind_packages()
方法は、そのそのパッケージに事実を拾っていないと思いますが、パッケージの下位ディレクトリを探しているかもしれませんか?私はfind_packages('.')
を試して、プロジェクトのルートディレクトリで検索しようとしましたが、これは機能しませんでした。
ディレクトリ構造を変更せずにこれを動作させることはできますか?
はここで実際のプロジェクトだ:
https://github.com/ThriceGood/Mimic
EDIT:
はまた、私は私が私のegg.infoフォルダにtop_level.txtファイルを取得setup.py installを実行したときにことに気づきました、 top_level.txtファイル内
/main_package
- __init__.py
- app.py
/sub_package
- __init__.py
- sub.py
、:それはトップレベルが実際のように、ルート/メインパッケージの内側に存在するパッケージであることを述べていますが書かれています。