2.3 KiB
2.3 KiB
APP打包步骤
一、复制APP
将要打包的APP复制粘贴到根目录
二、编辑APP下面的apps.py文件
在apps.py文件中添加该函数:
def ready(self):
"""Django 应用启动时的钩子。
在此执行运行时授权校验,未授权则抛出异常阻止应用启动。
"""
try:
from .license_verifier import verify_machine_license
verify_machine_license()
except Exception:
# 直接再抛出,让 Django 启动失败并展示错误信息
raise
三、迁移license
-
将根目录下面的license_verifier.py复制粘贴到要打包的APP下
-
修改license_verifier.py文件
将下面的PACKAGE_NAME的值改为要把包的app名称
PACKAGE_NAME = "hertz_studio_django_xxxxx"修改该脚本最后一行代码,将Xxxxx改为打包的app简称:
raise RuntimeError("Hertz Xxxxx license verification failed")
四、修改MANIFEST.in文件
将下面的hertz_studio_django_xxx改为打包的app名称
# 包含二进制文件
recursive-include hertz_studio_django_xxx *.py
recursive-include hertz_studio_django_xxx/migrations *.py
五、修改根目录下面的setup.py文件
- 修改成要打包的app名称(将hertz_studio_django_xxx改为打包的app名称)
package_name = 'hertz_studio_django_xxx'
- 将XXX改为app简称
print("欢迎使用 Hertz System xxx!")
- 更改下载的项目地址(将hertz_studio_django_xxx改为打包的app名称)
url="http://hzgit.hzsystems.cn/hertz_studio_django/hertz_studio_django_xxx", # 项目地址
- 更改关键词(将XXX改为app简称)
keywords="django XXXX verification security", # 关键词
- 修改project_urls(将xxx改为app简称)
project_urls={
"Bug Reports": "http://hzgit.hzsystems.cn/hertz_studio_django/hertz_studio_django_xxx/issues",
"Source": "http://hzgit.hzsystems.cn/hertz_studio_django/hertz_studio_django_xxx",
"Documentation": "http://hzgit.hzsystems.cn/hertz_studio_django/hertz_studio_django_xxx#readme",
}
六、打包
完成上述的修改后,在终端的项目输入以下命令并回车进行打包
python setup.py sdist
运行完成后会在dist目录下生成一个打包过后的文件