2016-07-20 2 views
0

私のフラスコアプリケーションを実行するためのエントリポイントを取得しようとしています。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 

、:それはトップレベルが実際のように、ルート/メインパッケージの内側に存在するパッケージであることを述べていますが書かれています。

答えて

0

私はちょうどすべてのフラスコのアプリケーションファイルをプロジェクトのルートディレクトリ内のサブディレクトリに入れてしまいました。それをうまく固定しました。

/project 
    - setup.py 
    /flask_app 
    - __init__.py 
    - app.py 
関連する問題