developer tip

Python egg 파일을 만드는 방법

optionbox 2020. 9. 10. 07:42
반응형

Python egg 파일을 만드는 방법


Python의 달걀 파일에 대한 질문이 있습니다.

패키지별로 구성된 많은 Python 코드가 있으며 계란 파일을 만들려고합니다. 지침을 따르고 있지만 매우 일반적입니다.

그에 따르면 setup.py 파일이 필요한 것 같습니다.

  1. setup.py 파일에 무엇을 넣고 어디에 있어야하는지 알려주시겠습니까?
  2. setup.py를 만든 다음 달걀 파일을 얻기 위해 "setup.py bdist_egg"를 시작하는 것으로 충분하다고 생각합니다. 확인해 주시겠습니까?
  3. .pyc 파일 만 egg 파일에 포함 할 수 있습니까?
  4. .egg 파일이 있으면 압축을 풀지 않고 코드를 시작할 수 java -jar <jar file>있습니까?

잘못된 문서를 읽고 있습니다. 당신은 이것을 원합니다 : https://setuptools.readthedocs.io/en/latest/setuptools.html#develop-deploy-the-project-source-in-development-mode

  1. setup.py 생성은 여기 Python의 표준 라이브러리 문서에있는 distutils 문서에서 다룹니다 . (파이썬 계란에 대한) 가장 큰 차이점은 당신입니다 import setup에서 setuptools하지 distutils.

  2. 네. 맞아야합니다.

  3. 나는 그렇게 생각하지 않는다. pyc파일은 버전 및 플랫폼에 따라 다를 수 있습니다. 계란을 열고 (그냥 zip 파일이어야 함) .py파일을 남기고 .pyc파일을 삭제할 있지만 권장되지는 않습니다.

  4. 잘 모르겠습니다. 그것은“개발 모드”일 수 있습니다. 아니면 "py2exe"또는 "py2app"모드를 찾고 있습니까?


# 4의 경우 앱용 jar 파일로 Java를 시작하는 가장 가까운 것은 Python 2.6의 새로운 기능, 실행 가능한 zip 파일 및 디렉터리 입니다.

python myapp.zip

여기서 myapp.zip은 __main__.py실행할 스크립트 파일로 실행 되는 파일이 포함 된 zip 입니다. 패키지 종속성도 파일에 포함될 수 있습니다.

__main__.py
mypackage/__init__.py
mypackage/someliblibfile.py

달걀을 실행할 수도 있지만 주문은 그다지 좋지 않습니다.

# Bourn Shell and derivatives (Linux/OSX/Unix)
PYTHONPATH=myapp.egg python -m myapp
rem Windows 
set PYTHONPATH=myapp.egg
python -m myapp

이것은 myapp.egg를 Python 경로에 놓고 -m 인수를 사용하여 모듈을 실행합니다. myapp.egg는 다음과 같습니다.

myapp/__init__.py
myapp/somelibfile.py

그리고 파이썬이 실행됩니다 __init__.py( __file__=='__main__'명령 줄 사용을 위해 앱에서 확인해야 합니다).

Egg 파일은 단지 zip 파일이므로 __main__.pyzip 도구를 사용하여 계란 에 추가 python myapp.egg하고 PYTHONPATH 환경 변수가 설정된 위의 주문 대신 Python 2.6에서 실행 가능하게 만들고 실행할 수 있습니다.

shebang으로 직접 실행 가능하게 만드는 방법을 포함하여 실행 가능한 zip 파일에 대한 자세한 내용 은 주제에 대한 Michael Foord의 블로그 게시물에서 찾을 수 있습니다 .


지금은 달걀 대신 파이썬 바퀴사용 하여 배포 해야한다고 생각합니다 .

바퀴는 파이썬 배포의 새로운 표준이며 계란을 대체하기위한 것입니다. 지원은 pip> = 1.4 및 setuptools> = 0.8에서 제공됩니다.

참고 URL : https://stackoverflow.com/questions/2026395/how-to-create-python-egg-file

반응형