2016-08-13 14 views
12

próbuję wdrożyć mojej podstawowej aplikacji dotnet do Heroku, ale nadal działać przeciwko tym błędzie:Wdrażanie rdzeń dotnet do Heroku

Restore failed 
unknown keyword platform 
!  Push rejected, failed to compile Web app app. 
!  Push failed 

Gdy używam dotnet run z CLI (Jestem na mac) wszystko działa dobrze. Podaję mój Project.json poniżej w przypadku, który pomaga:

{ 
    "dependencies": { 
    "Microsoft.NETCore.App": { 
    "version": "1.0.0", 
    "type": "platform" 
    }, 
    "Microsoft.AspNetCore.Mvc": "1.0.0", 
    "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0", 
    "Microsoft.AspNetCore.Server.Kestrel": "1.0.0", 
    "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0", 
    "Microsoft.Extensions.Configuration.FileExtensions": "1.0.0", 
    "Microsoft.Extensions.Configuration.Json": "1.0.0", 
    "Microsoft.Extensions.Configuration.CommandLine": "1.0.0", 
    "Microsoft.Extensions.Logging": "1.0.0", 
    "Microsoft.Extensions.Logging.Console": "1.0.0", 
    "Microsoft.Extensions.Logging.Debug": "1.0.0", 
    "Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0", 
    "Microsoft.EntityFrameworkCore.Sqlite": "1.0.0", 
    "Microsoft.EntityFrameworkCore.Design": { 
    "version": "1.0.0-preview2-final", 
    "type": "build" 
    } 
}, 

"tools": { 
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-  final", 
    "Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final" 
}, 

"frameworks": { 
    "netcoreapp1.0": { 
    "imports": [ 
     "dotnet5.6", 
     "portable-net45+win8" 
    ] 
    } 
}, 

"buildOptions": { 
    "emitEntryPoint": true, 
    "preserveCompilationContext": true 
}, 

"runtimeOptions": { 
    "configProperties": { 
    "System.GC.Server": true 
    } 
}, 

"publishOptions": { 
    "include": [ 
    "wwwroot", 
    "Views", 
    "Areas/**/Views", 
    "appsettings.json", 
    "web.config" 
    ] 
}, 

"tooling": { 
    "defaultNamespace": "Tokens_monolith" 
} 
} 
+1

Czy na platformie Heroku zainstalowano dotnet-cli i .NET Core SDK/Runtime? – Tseng

+0

Uruchomiłem 'budding heroku: ustaw https: // github.com/jincod/dotnet-buildpack', aby ustawić mój buildpack, a następnie wdrożyłem mój kod bezpośrednio z github. Zaczyna działać 'DNVM' przed pomyłką. – pgruber

+2

To ważna informacja. Obecny ASP.NET Core nie używa już DNX. Ponieważ RC2, (ASP) .NET Core działa tylko na dotnet-cli. DNX jest przestarzałe i nie będzie dalej rozwijane ani rozwijane. DNVM jest/było narzędziem DNX, które instalowałoby środowisko wykonawcze DNX. .NET Core SDK/Runtime można znaleźć tutaj https://www.microsoft.com/net/core – Tseng

Odpowiedz

10

I w końcu to z powodzeniem wdrożony do Heroku, to wszystko jest i działa. Tseng był ogromną pomocą w tym, więc dziękuję. Mój buildpack, którego używałem, był skierowany na starszą wersję .NET Core. Heroku ma eksperymentalny buildpack kierujący na ASPNET5 tutaj: https://github.com/heroku/dotnet-buildpack.

Od czasu tej odpowiedzi ten buildpack używa Mono do wykonywania w czasie wykonywania. Występuje żądanie pobrania, aby użyć interfejsu .NET CLI, z którego korzystałem i działa świetnie. Można go znaleźć tutaj: https://github.com/noliar/dotnet-buildpack. Mam nadzieję, że wkrótce zaakceptują to żądanie ściągnięcia. To był buildpack, którego użyłem.

Mam nadzieję, że to komuś pomaga.

Powiązane problemy