Lor*_*ori 3 deployment build .net-core
我有一些针对net标准2.0的项目和针对netcore 2.1的控制台应用程序的解决方案
我设置为输出文件夹“ myFolder”。从Visual Studio构建,我得到所有dll:
使用“ dotnet build”命令可以得到相同的结果。现在,我需要控制台应用程序的exe文件。所以我使用“ dotnet publish -c Release -r win-x64 MySolution.sln”命令。
现在,我得到了这个新目录“ myFolder \ netcoreapp2.1 \ win-x64”,在其中可以找到所有dll和控制台应用程序的exe文件。
不够!
我再找到一个目录:“ myFolder \ netcoreapp2.1 \ win-x64 \ publish”,在这里我再次找到所有dll和控制台应用程序的exe文件。
我不知道他们有什么意思。我阅读了命令文档,但没有找到答案。
有人照亮我吗?
Chr*_*row 12
为了能够成功发布和部署,您真正需要了解的是,您需要dotnet publish并确保您拥有 Release 配置-c Release,以及命令行上的任何其他所需选项。
您的所有文件都将位于“发布”子文件夹中,例如./bin/Release/[您的解决方案所针对的框架]/publish。这里包含的文件是应用程序/服务运行实例所需的一切。这MySolution.dll是您的应用程序/服务的入口点,并将自动链接到发布文件夹中存储的所有其他依赖项和配置。
要配置和部署正在运行的实例,您需要弄清楚如何将所有这些文件部署到服务器,并以某种方式配置某些内容(例如 Web 服务器、运行时、服务主机...)来调用您的MySolution.dll.
请注意,在您dotnet publish指定的-r,这意味着您的应用程序的目标是在 64 位 Windows 下运行,而不是 Linux 发行版或 OS\xc2\xa0X (这使得它的可移植性较差,但它具有隔离您的应用程序的优点)应用程序对您部署到的服务器上已安装的运行时进行更改。)。这就是为什么您会看到一个额外的文件夹win-x64。
此外,您还显式地从解决方案文件指定的解决方案配置进行构建MySolution.sln,这可能是最可靠的事情,因为这将确保解决方案用作依赖项的任何项目(这是典型的良好实践)将包含在构建/发布。
根据文档
-o|--output <OUTPUT_DIRECTORY>指定输出目录的路径。如果未指定,则默认为./bin/ [配置] / [框架] / publish /(对于依赖框架的部署)或./bin/ [配置] / [framework] / [runtime] / publish /(对于自定义)包含部署。
dotnet publish -c Release -r win-x64 --output ./MyTargetFolder MySolution.sln
| 归档时间: |
|
| 查看次数: |
13194 次 |
| 最近记录: |