簡體   English   中英

為mac創建一個自包含的可執行文件

[英]Making a self contained executable for mac

我在Visual Studio中創建了一個.net核心控制台應用程序。 我想現在打包它作為Windows和Mac的可執行文件。

我將運行時部分添加到project.json。

這是我的projects.json基於我在這里看到的: https//docs.microsoft.com/en-us/dotnet/articles/core/deploying/index#self-contained-application

{
  "version": "1.0.0-*",
  "buildOptions": {
    "debugType": "portable",
    "emitEntryPoint": true
  },

  "dependencies": {
    "AngleSharp": "0.9.9",
    "CsvHelper": "2.16.3",
    "Microsoft.NETCore.App": {
      "version": "1.0.1"
    }
  },

  "frameworks": {
    "netcoreapp1.0": {
    }
  },
  "runtimes": {
    "win10-x64": {},
    "osx.10.10-x64": {}
  }
}

這將在調試/發布中創建一個名為win10-x64的文件夾,其中包含一個可執行文件但沒有osx文件夾。

我是否缺少針對此操作系統的依賴項?

答案是從命令行發布它

dotnet publish -r osx.10.10-x64

然后文件夾/osx.10.10-x64/publish/包含一個可以在安裝了SDK的mac上運行的文件。

.NET Core不直接構建可執行文件。 雖然這是在路線圖中,但最后我檢查了(1.0.1)它還沒有這樣做。 您將在編譯時獲得一個DLL文件,您可以通過將其傳遞給dotnet二進制文件來運行該文件。 不要讓DLL擴展欺騙你,它適用於任何支持的平台。

正如另一個人說你應該做一個發布,以確保所有的應用程序文件都被復制到發布文件夾,所以他們准備捆綁,但只是復制相同的DLL文件。 我已經采用相同的發布結果並在IIS下的Windows和Kestrel下的Red Hat上運行它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM