我写了一个使用Django构建的静态博客生成器。当我将其与setup.py打包并创建相应的可执行文件时,会发生一些问题。
当我使用pip install maltose
安装并运行maltose-cli migrate
时,到目前为止一切正常。
但是当我运行maltose-cli runserver
时,出现了一个错误c:\software\python\python.exe: can't open file 'C:\Software\Python\Scripts\maltose-cli': [Errno 2] No such file or directory
。
然后,我尝试maltose-cli.py runserver
,一切正常。
这是我的setup.py
setup(
name=NAME,
version=about['__version__'],
description=DESCRIPTION,
long_description=long_description,
long_description_content_type='text/markdown',
author=AUTHOR,
author_email=EMAIL,
python_requires=REQUIRES_PYTHON,
url=URL,
packages=find_packages(include=["maltose", 'maltose.*']),
scripts=['maltose-cli.py'],
entry_points={
'console_scripts': ['maltose-cli=maltose:execute'],
},
install_requires=REQUIRED,
extras_require=EXTRAS,
include_package_data=True,
license='MIT',
classifiers=[
# Trove classifiers
# Full list: https://pypi.python.org/pypi?%3Aaction=list_classifiers
'License :: OSI Approved :: MIT License',
'Programming Language :: Python :: 3.6',
],
# $ setup.py publish support.
cmdclass={
'upload': UploadCommand,
},
)
Dir
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2019/4/20 18:41 maltose
-a---- 2019/4/20 18:47 90 maltose-cli.py
-a---- 2019/4/20 18:47 4047 setup.py
在maltose/__init__.py
import os
import sys
def execute():
os.environ.setdefault('DJANGO_DEBUG', 'True')
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'maltose.maltose.settings')
try:
from django.core.management import execute_from_command_line
except ImportError as exc:
raise ImportError(
"Couldn't import Django. Are you sure it's installed and "
"available on your PYTHONPATH environment variable? Did you "
"forget to activate a virtual environment?"
) from exc
execute_from_command_line()
如果需要,所有代码都位于https://github.com/MaltoseEditor/maltose
我该如何解决?我希望它在我运行maltose-cli runserver
时能正常工作。
答案 0 :(得分:-1)
该错误与项目的源代码更改时的自动重新加载功能有关。
作为解决方法,请使用--noreload flag禁用此功能。
maltose-cli runserver --noreload
旁注:这也适用于Bottle.py