將套件資料合併到可分發的Python 套件中通常會帶來挑戰,特別是在使用setuptools 或distutils 時。儘管遵循傳統智慧,但一些用戶在讓安裝程式檢索所需文件時遇到困難。
問題中提供的配置:
<code class="python">setup( name='myapp', packages=find_packages(), package_data={ 'myapp': ['data/*.txt'], }, include_package_data=True, zip_safe=False, install_requires=['distribute'], )</code>
出現根據既定文件正確。然而,正如答案敏銳地指出的那樣,這種方法在處理二進位建置時存在不足(python setup.py bdist ...)。在這種情況下,不使用 package_data 機制。
為了在二進位和來源發行版中可靠地包含套件數據,MANIFEST.in 檔案提供了一個強大的替代方案。 MANIFEST.in 是一個可自訂的清單,它明確列出了要合併到套件中的檔案。透過使用此方法,開發人員可以確保所有必要的資料都存在於兩種安裝場景中。
以上是如何使用 setuptools/distutils 確保您的套件資料包含在二進位和來源發行版中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!