在本地pycharm能好好跑着的代码 ,到了 centos 服务器上部署的时候就会出现 找不到包的问题。
原因是 在windows 下 使用pycharm 创建package的时候,虽然 pycharm 会自动创建一个空白的—__init__.py文件,python会认为这个文件夹是个module 模块,但是 在使用docker 或者Linux 环境创建项目容器的时候 , 就会出现找不到 moudle的情况。
这是因为在Linux docker 环境中,并没有当前环境的环境变量。 系统在扫描moudle的时候,会默认去找python env环境下的moudle ,自然找不到我们自己的module模块,所以这时候我们只需要将模块的路径,交给 系统就好。
import sys
import os
projectPath = os.path.abspath(os.path.join(os.getcwd()))
sys.path.append(projectPath)
from com.hoteamsoft.alg.a002.service import *
if __name__ == '__main__':
print("__main__")
service = InfluxDB2Service("")
# csv_single = CSVSingleService("配置文件信息")
# csv_batch = CSVBatchService("配置文件信息")
config = service.init_config()
service.start(Alg(config))
service.close()