2013-02-26 129 views
11

我正在使用cx_freeze來部署我的應用程序。我想包括一個完整的目錄,因爲包括單個文件不會將它們放在一個文件夾中。我怎樣才能包含一個文件夾?如何使用cx_freeze包含文件夾?

回答

17

您必須爲建築選項設置包含文件參數。你可以用不同的方式做到這一點,但我會展示我的配置的一部分。我在這裏描述的是一個特定的文件和一個特定的目的地。我想你也可以設置這樣的路徑,但我還沒有測試過。

編輯:經過測試,所以選擇適合您項目的方法。

buildOptions = dict(include_files = [(absolute_path_to_your_file,'final_filename')]) #single file, absolute path. 

buildOptions = dict(include_files = ['your_folder/']) #folder,relative path. Use tuple like in the single file to set a absolute path. 

setup(
     name = "appname", 
     version = "1.0", 
     description = "description", 
     author = "your name", 
     options = dict(build_exe = buildOptions), 
     executables = executables) 

再看看這個話題。它提出了相同的問題:How can i bundle other files when using cx_freeze?

+0

我看不到如何設置路徑? – PascalVKooten 2013-03-29 19:36:01

+2

您必須將absolute_path_to_your_file替換爲您要包含的源文件的目標。在基於Windows的系統上,絕對路徑大部分是這樣的:「C:// your_folder/a_subfolder」。 – Ecno92 2013-03-30 17:58:29

+0

你知道任何包含整個文件夾的方法嗎? – PascalVKooten 2013-03-30 19:47:45