2017-02-12 32 views
10

我試圖發佈一個獨立的應用程序,用.net-core製作,遵循https://docs.microsoft.com/en-us/dotnet/articles/core/deploying/index中的步驟。.net-core self contained問題發佈

與代碼庫是https://github.com/fontanaricardo/httpecho

我執行命令:

$dotnet build -r debian.8-x64 
$dotnet publish -c Release -r debian.8-x64 
$docker build -t httpecho . 

啓動容器:

$ docker run -p 5000:5000 httpecho 
Error: assembly specified in the dependencies manifest was not found -- package: 'Microsoft.AspNetCore.Hosting.Abstracti 
ons', version: '1.1.0', path: 'lib/netstandard1.3/Microsoft.AspNetCore.Hosting.Abstractions.dll' 

我做錯了什麼?

更新

打開文件httpecho.deps.json,在發佈文件夾,引用不存在的文件夾。

"runtime": { 
     "lib/netstandard1.3/Microsoft.AspNetCore.Http.Abstractions.dll": {} 
    } 
+0

第一個錯誤說'Microsoft.AspNetCore.Http.Abstractions',第二個說'Microsoft.AspNetCore.Antiforgery'。這是什麼? – natemcmaster

+0

@natemcmaster刪除了更新2,因爲它會導致混淆。 –

+1

'ubuntu.16.04-x64'和'netcoreapp1.0'框架的錯誤。 – FireAlkazar

回答

4

您的設備在使用自包含的發佈時嘗試使用正確的分發包(嘗試在我的工作良好的版本中)。嘗試修復包裝

是否有Microsoft.AspNetCore.Http.Abstractions.dlldebian.8-x64\publish?如果不嘗試手動添加(以及所有其他缺少的* .dll),然後嘗試運行。如果它運行沒有錯誤將是正確的分裝包的問題

+0

感謝您的回答,'Microsoft.AspNetCore.Http.Abstractions.dll'在文件夾中。我嘗試從docker映像'microsoft/dotnet:1.1.0-sdk-projectjson'執行發佈,但錯誤仍然存​​在。文件'httpecho.deps.json'引用'lib/netstandard1.3/Microsoft.AspNetCore.Hosting.Abstractions.dll'。 –