def setup_addon_modules(path, package_name):
"""
Imports and reloads all modules in this addon.
path -- __path__ from __init__.py
package_name -- __name__ from __init__.py
"""
def get_submodule_names(path=path[0], root=""):
module_names = []
for importer, module_name, is_package in pkgutil.iter_modules([path]):
if is_package:
sub_path = path + "\\" + module_name
sub_root = root + module_name + "."
module_names.extend(get_submodule_names(sub_path, sub_root))
else:
module_names.append(root + module_name)
return module_names
def import_submodules(names):
modules = []
for name in names:
modules.append(importlib.import_module("." + name, package_name))
return modules
def reload_modules(modules):
for module in modules:
importlib.reload(module)
names = get_submodule_names()
modules = import_submodules(names)
if reload_event:
reload_modules(modules)
return modules
developer_utils.py 文件源码
python
阅读 19
收藏 0
点赞 0
评论 0
评论列表
文章目录