如何在 cx_freeze 中包含一个文件夹?

Posted

技术标签:

【中文标题】如何在 cx_freeze 中包含一个文件夹?【英文标题】:How can I include a folder with cx_freeze? 【发布时间】:2013-02-26 00:36:06 【问题描述】:

我正在使用 cx_freeze 来部署我的应用程序。我想包含整个目录,因为包含单个文件不会将它们放在文件夹中。如何包含文件夹?

【问题讨论】:

【参考方案1】:

您必须为构建选项设置包含文件参数。您可以通过不同的方式执行此操作,但我将展示我的配置的一部分。我在这里描述的是一个特定的文件和一个特定的目的地。我想你也可以设置这样的路径,但我还没有测试过。

编辑:对此进行了测试,因此请为您的项目选择正确的方法。

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?

【讨论】:

看不到如何设置路径? 您必须将 absolute_path_to_your_file 替换为要包含的源文件的目标位置。绝对路径主要是这样的:“C://your_folder/a_subfolder”在基于 Windows 的系统上。 你知道包含整个文件夹的方法吗? 我刚刚为你测试了这个,它真的很简单。我将用相对路径来证明这一点。所以我的文件夹“testfolder”在项目文件夹中。使用 --> include_files = ['testfolder/'], -- 它会起作用。现在我的测试文件夹(包括其中的所有文件)都包含在构建中。您也可以在绝对路径中执行此操作,但请注意您需要为此使用元组而不是指定相对路径。如您所见,这是原始答案的有效解决方案。

以上是关于如何在 cx_freeze 中包含一个文件夹?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 cx_freeze 中包含一个文件夹?

如何在 cx_freeze 中包含一个文件夹?

如何在 cx_freeze 中包含一个文件夹?

如何在 cx_freeze 中包含一个文件夹?

使用 cx_Freeze - 如何在 .exe 中包含所有必要的文件?

使用 pygame 在 cx_Freeze 中包含整个文件夹