创建在线安装包
在线安装包从存储在二进制中的信息(Updates.xml),以及创建 installer 时使用的 config.xml 文件中指定位置存储的仓库中获取仓库描述。创建一个仓库并将其上传到 Web 服务器。然后在用于创建安装包的 config.xml 文件中指定仓库的位置。
创建仓库
使用 repogen
工具创建一个包含一个目录中所有包的在线仓库
repogen.exe -p <package_directory> <repository_directory>
例如,要创建仅包含 org.qt-project.sdk.qt 和 org.qt-project.sdk.qtcreator 的仓库,请输入以下命令:
repogen.exe -p packages -i org.qt-project.sdk.qt,org.qt-project.sdk.qtcreator repository
当仓库创建完成后,将其上传到 Web 服务器。您必须在安装包配置文件中指定仓库的位置。
配置仓库
安装包配置文件(config.xml)中的 <RemoteRepositories>
元素可以包含多个仓库的列表。每个仓库都可以有以下设置
<Url>
,指向可用组件列表。<Enabled>
,其中 0 禁用此仓库。<Username>
,在受保护的仓库中用作用户。<Password>
,用于设置受保护仓库的密码。<DisplayName>
,可选地设置一个字符串代替 URL 显示。
URL 需要指向列出可用组件的 Updates.xml 文件。例如:
<RemoteRepositories> <Repository> <Url>http://www.example.com/packages</Url> <Enabled>1</Enabled> <Username>user</Username> <Password>password</Password> <DisplayName>Example repository</DisplayName> </Repository> </RemoteRepositories>
安装包只有在能够访问仓库时才能工作。如果安装后访问仓库,维护工具将拒绝安装。但是仍然可以进行卸载。默认情况下可以启用或禁用仓库。对于需要身份验证的仓库,也可以在此设置详细信息,尽管在这里输入密码通常不推荐,因为密码会以纯文本形式保存。未在此设置的身份验证详细信息将在运行时使用对话框获取。用户可以在运行时绕过这些设置。
配置仓库类别
安装包配置文件(config.xml)中的 <RepositoryCategory>
元素可以包含多个 <RemoteRepositories>
元素的列表。在 <RepositoryCagetory>
元素内的每个 <RemoteRepositories>
元素视为一个类别。每个类别都可以有一个 <DisplayName>
、一个 <Tooltip>
、一个 <Preselected>
元素和多个 <Repository>
元素。仓库类别显示在组件选择页的左侧组件选择小部件上
默认情况下,组件选择小部件仅显示无类别的存储库。选中一个或多个存储库并单击获取将更新小部件以显示所选分类存储库的内容。存储库类别中的组件被标记为不稳定,这意味着您可以安装其他组件,尽管某些组件可能缺少依赖项、脚本错误等。有关不稳定组件的更多信息,请参见配置文件元素摘要。
创建存储库类别的示例
<RepositoryCategories> <RemoteRepositories> <Displayname>Category 1</Displayname> <Preselected>true</Preselected> <Tooltip>Tooltip for category 1</Tooltip> <Repository> <Url>http://www.example.com/packages</Url> <Enabled>1</Enabled> <Username>user</Username> <Password>password</Password> <DisplayName>Example repository</DisplayName> </Repository> </RemoteRepositories> </RepositoryCategories>
创建安装器二进制文件
要使用binarycreator
工具创建在线安装程序,请输入以下命令
<location-of-ifw>\binarycreator.exe -t <location-of-ifw>\installerbase.exe -p <package_directory> -c <config_directory>\<config_file> -e <packages> <installer_name>
例如,输入以下命令创建一个名为SDKInstaller.exe的安装器二进制文件,它不包含org.qt-project.sdk.qt和org.qt-project.qtcreator的数据,因为这些软件包是从远程存储库下载的
binarycreator.exe -p installer-packages -c installer-config\config.xml -e org.qt-project.sdk.qt,org.qt-project.qtcreator SDKInstaller.exe
减小安装程序大小
即使组件是从网络服务器获取的,binarycreator
也默认将它们添加到安装器二进制文件中。然而,当安装程序在网络服务器上检查更新时,如果不存在新版本,最终用户将不会进行下载。
或者,您还可以创建不包含任何数据且从网络服务器获取所有数据的在线安装程序。使用binarycreator
工具的-n
参数,并仅将根组件添加到安装程序中。通常,根组件是空的,因此仅添加根的XML描述。
有关您拥有的选项的更多信息,请参见binarycreator参数摘要。
©2021 Qt公司有限公司。此处包含的文档贡献归其各自所有者所有。此处提供的文档根据自由软件基金会发布的GNU自由文档许可协议版本1.3的条款授权。Qt公司和Qt及其相应商标是芬兰和/或世界各地的Qt公司有限公司的商标。所有其他商标均为其各自所有者的财产。