我有一个简单的解决方案,其中有一个文件夹和一个带有Hello World .NET Core 2.0
控制台应用程序的csproj。
我为独立的win-x64版本创建了一个发布配置文件。
当我在VS 2017中发布此内容时,一切都变甜了。
发布配置文件相对于Properties\PublishProfiles\FolderProfile.pubxml
中的csproj
但是我无法使用msbuild.exe
或dotnet.exe
都无法在命令行上发布它。
执行publish命令并实际上创建一个publish文件夹。它既不在配置文件中配置的位置,也不包含实际的exe
(与bin
文件夹中相同的内置dll)。
标准互联网搜索告诉我这样做:
dotnet publish /p:Configuration=Release /p:PublishProfile=FolderProfile ConsoleApp3.csproj
有时人们指定扩展名.pubxml
。试过了。
我还尝试了msbuild.exe
的变体:
msbuild.exe /t:Publish /p:Configuration=Release /p:PublishProfile=FolderProfile ConsoleApp3.csproj
结果相同。
答案 0 :(得分:0)
我从未真正找到过使用个人资料发布的方法。但是,我设法创建了一个命令行,生成了我想要的东西:
dotnet.exe publish -c Release -r win-x64 -o publish --self-contained true MyProject.csproj
答案 1 :(得分:0)
如果您希望发布到特定文件夹,则可以使用:
dotnet publish --framework netcoreapp2.1 --output "c:\PUBLISHED\ProofOfConcept" --configuration Debug
我个人更喜欢创建一个包含以下代码的批处理文件(.bat),然后双击它:
TaskKill /F /IM dotnet.exe
iisreset /stop
cd C:\MyProjects\ProofOfConcept\ProofOfConcept
dotnet publish --framework netcoreapp2.1 --output "c:\PUBLISHED\ProofOfConcept" --configuration Debug
iisreset /start
pause