5

yayımlanırken hata "Yolun bir parçası bulunamadı" hata Visual Studio 2015 Güncelleştirmesi 3 ile oluşturulan ve hatasız olarak oluşturulan çok basit bir .NET Çekirdek Web Uygulaması (.NET Framework) var..NET Çekirdek Uygulama

Dosya sisteminden x64 profiliyle yayımlayabilirim. Hedef çalışma zamanı "win7-x86" ile yayınlamaya çalışırken Ancak aşağıdaki hata de verir:

Could not find a part of the path 'c:\Users\Developer\Documents\Visual Studio 2015\Projects\SelfHostTest\src\SelfHostTest\bin\Release\net452\win7-x86\SelfHostTest.exe'

Bir Windows 8.1 x64 makinesini kullanın. "Configuration Manager" a gittim ve "Any CPU" dan "x86" ye "Platform" değiştirdim ama işe yaramadı.

"src \ SelfHost2 \ bin \ Debug \ net452 \ win7-x64" klasörünün olduğunu fark ettim ancak yaptığım hiçbir şey x86 için bir yapı oluşturmuyor.

Bu yayınlamak çalışır: Bu yayınlama

enter image description here

çalışmaz:

enter image description here

Burada birisi bana yardımcı yardımcı olmak için benim project.json bu.

{ 
    "dependencies": { 
    "Microsoft.AspNetCore.Diagnostics": "1.0.0", 
    "Microsoft.AspNetCore.Mvc": "1.0.0", 
    "Microsoft.AspNetCore.Razor.Tools": { 
     "version": "1.0.0-preview2-final", 
     "type": "build" 
    }, 
    "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0", 
    "Microsoft.AspNetCore.Server.Kestrel": "1.0.0", 
    "Microsoft.AspNetCore.Server.WebListener": "0.1.0", 
    "Microsoft.AspNetCore.StaticFiles": "1.0.0", 
    "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0", 
    "Microsoft.Extensions.Configuration.Json": "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.VisualStudio.Web.BrowserLink.Loader": "14.0.0" 
    }, 

    "tools": { 
    "BundlerMinifier.Core": "2.0.238", 
    "Microsoft.AspNetCore.Razor.Tools": "1.0.0-preview2-final", 
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final" 
    }, 

    "frameworks": { 
    "net452": { 
     "dependencies": { 
     } 
    } 
    }, 

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

    "runtimes": { 
    "win7-x64": {}, 
    "win7-x86": {} 
    }, 

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

    "scripts": { 
    "prepublish": [ "bower install", "dotnet bundle" ], 
    "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ] 
    }, 

    "commands": { 
    "http": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.WebListener --server.urls http://localhost:5000" 
    } 
} 

cevap

8

Bu, takımda bir hatadır. Varsayılan RID için her zaman üretilir (ve AFAIK bunu değiştirmenin bir yolu yoktur) ancak daha sonra yayınlama iletişiminde project.json'daki tüm RID'leri görürsünüz ve varsayılan olmayan bir yayın seçerseniz, projeden bu yana başarısız olur bu RID için oluşturulmadı. Yayınlamak istediğiniz RID'yi kullanarak komut satırından oluşturmayı deneyin. Bu şekilde VS yayınlarken ikili dosyaları bulabilir ve yayınlama çalışması gerekir.

+0

Tamam. Gelişmekte olan makinemin konsoluna "dotnet publish --configuration Release --runtime win7-x86" yazdım. Bir klasör "Release \ net452 \ win7-x86" oluşturdu. İçeriği Windows 7'ye kopyaladım. Ben exe koştu ve ben x86/x64 – Murilo

+0

hakkında şikayet aldım x86 – Pawel

+0

için inşa ederken projenin içinde "buildOptions" için "" platform ":" x86 "eklemek deneyin! Ama sormama izin ver: x64'e yayınlarken gerçekten x64 olacak mı? – Murilo