본문 바로가기

Linux

ImportError: No module named 디렉토리이름

ImportError: No module named 'was'

python 에서 위와 같은 에러가 발생할때가 있다. 본인 같은 경우 windows에서 개발한 프로그램을 linux로 포팅할때 발생하였다.

경험상 이 경우 보통 해당 '디렉토리이름'을 인식하지 못해서 발생하는 에러인데,

이를 해결하기 위한 방안이 2가지 정도 인것으로 확인했다.

첫째는 실제 '디렉토리'가 python이 인식하지 못하는 디렉토리로 구성되어 있기 때문인데, 이 경우는 __init__.py 파일을 만들어주면 된다. 이는 pycham과 같은 IDE에서는 패키지(디렉토리 용) 생성시 자동으로 생성을 해주지만, 없는 경우 python이 알지 못해 발생 할 수 있다.

두번째는 python에 path가 안잡혀잇는 경우다. 이는 path를 잡아주면 된다. python은 실행하면 보통 실행위치를 pythonpath에 넣고 실행하지만, 위와같이 인식하지 못하는 경우 실행쉘 같은데에서 path를 잡아주면 된다.

export PYTHONPATH=${PYTHONPATH}:${WAS_HOME}/was