The way to package and deploy applications varies between operating systems. For Windows and macOS, windeployqt and macdeployqt automate the steps to generate a stand-alone application package.
When manually deploying applications that depend on Qt WebEngine, all the files that are required to run the application have to be included: libraries, QML imports, plugins, and translations.
更多信息,见 部署 Qt 应用程序 .
Qt WebEngine does try to support all 支持平台 of Qt. However, due to different requirements of Chromium this is not always possible. Known limitations are:
When manually deploying applications that depend on Qt WebEngine, the following files might have to be deployed:
The following libraries must be deployed with applications that depend on Qt WebEngine:
If Qt Quick integration is used in the application, the QtWebEngine import directory needs to be deployed.
Qt WebEngine takes advantage of the multi-process model that the Chromium project offers. The multi-process model requires that the Qt WebEngine Process executable be deployed alongside your application.
WebEngine process is executed for each QWebEngineView or WebEngineView instance. For example, a browser application with two tabs open should have two separate instances of the process running. This is a common approach used by most modern web engines to provide a stable browsing experience.
						At runtime, Qt WebEngine looks for the
						
QtWebEngineProcess
						
						executable in the directory that QLibraryInfo::location(
						
							QLibraryInfo::LibraryExecutablesPath
						
						) returns. For Qt installations, this is
						
QTDIR/libexec
						
						(Linux) or
						
QTDIR\bin
						
						(Windows). The path can be changed by defining a
						
qt.conf
						
						file, for example. Alternatively, an executable path can be set as a value of the
						
QTWEBENGINEPROCESS_PATH
						
						environment variable. On macOS, Qt WebEngine looks for the executable in
						
.app/Helpers/QtWebEngineProcess
						
						.
					
Qt WebEngine 要求下列资源文件:
qtwebengine_resources.pak
							
							contains the resources needed by Chromium.
						
qtwebengine_devtools_resources.pak
							
							contains tools for remote debugging.
						
qtwebengine_resources_100p.pak
							
							contains images suitable for low resolution displays.
						
qtwebengine_resources_200p.pak
							
							contains images suitable for high DPI displays.
						
icudtl.dat
							
							provides support for International Components for Unicode (ICU). It is the Chromium version of ICU, which is not needed if Qt WebEngine was configured to use the system ICU.
						从以下位置搜索资源:
resources
							
							directory in the directory specified by QLibraryInfo::location(
							
								QLibraryInfo::DataPath
							
							)
						
.app/Content/Resources
							
						
						区域设置数据 (譬如
						
en-US.pak
						
						) 从以下位置搜索:
					
.app/Content/Resources
							
						
qtwebengine_locales
							
							directory in the directory specified by QLibraryInfo::location(
							
								QLibraryInfo::TranslationsPath
							
							)
						
						若
						
							WebEngine
						
						application is built using the Qt Quick Compiler, and the application ships JavaScript files inside .qrc resources, and these files are supposed to be loaded from inside HTML pages, make sure to specify the resource files in a
						
QTQUICK_COMPILER_SKIPPED_RESOURCES
						
						qmake variable inside your project. This prevents the Qt Quick Compiler from trying to generate C++ code for the corresponding JavaScript code, as well as removing the original JavaScript code from the Qt resources file, which would lead to broken HTML pages. For example:
					
QTQUICK_COMPILER_SKIPPED_RESOURCES += resources/my_resource.qrc