【发布时间】:2013-09-05 23:47:26
【问题描述】:
在我的开发 (Win7) 机器上,我的应用程序运行良好。文件夹结构如下(正在运行的脚本是run.py下面):
package1/
__init__.py
run.py
..
在应用程序内部,有一些模块可以做类似的事情
import app from package1
效果很好。
但是,当我尝试部署到 linux 机器并运行完全相同的文件时,我收到错误:
ImportError: No module named package1
在运行此脚本时,我查看了两台机器的 sys.path。 windows机器的前两行是这些:
C:\\Users\\USERNAME\\IdeaProjects\\PROJ_NAME\\package1
C:\\Users\\USERNAME\\IdeaProjects\\PROJ_NAME
而linux只有这个:
/home/username/webapps/PROJ_NAME/package1
我认识到问题是缺少第二行。但它为什么不见了?我错过了什么?我是不是建错了文件夹结构?
【问题讨论】:
-
import app; print app.__file__告诉你什么是被导入的? -
我认为
PROJ_NAME文件夹是这两个文件夹中唯一应该位于任一计算机路径上的文件夹。 -
@user2357112 这对我来说确实有意义,但问题是为什么它首先存在?
标签: python linux deployment package