2

我想尝试新的 ASP.NET 5(也称为 vNext?),所以我下载了 ubuntu-14.04.2-server-amd64.iso,安装在 VMware Player 中并运行。

安装后,我运行以下命令:

  • sudo apt-get 更新
  • sudo apt-get 升级
  • sudo apt-get install nodejs-legacy npm
  • sudo npm install -g gulp
  • sudo npm install -g bower

参考https://github.com/aspnet/home,我按照步骤:

  1. 获得单声道
  2. 获取 libuv
  3. 获取 DNVM
  4. 将源添加到 NuGet.config

然后我创建一个 ASP.NET 项目,在“ASP.NET 5 Preview Template”(Visual Studio Community 2015 RC)中选择“Web site”。我将整个项目文件夹上传到在 VMware Player 中运行的 ubuntu 服务器。

只需再次执行以下步骤:

  1. cd 到项目文件夹
  2. dnu 恢复

(下载安装...) 写锁文件 /home/ubuntu/vNext/WebApplication1/src/WebApplication1/project.lock.json npm WARN package.json ASP.NET@0.0.0 无描述 npm WARN package.json ASP。 NET@0.0.0 没有存储库字段。npm WARN package.json ASP.NET@0.0.0 No README data [18:04:44] 警告:gulp 版本不匹配:[18:04:44] 全局 gulp 为 3.9.0 [18:04:44] 本地 gulp是 3.8.11 [18:04:44] 使用 gulpfile ~/vNext/WebApplication1/src/WebApplication1/gulpfile.js [18:04:44] 开始'干净'... [18:04:44] 完成'干净' 5.43 毫秒后 [18:04:44] 开始“复制”... [18:04:44] 16 毫秒后完成“复制” 恢复完成,经过 217628 毫秒

  1. dnx 红隼

System.InvalidOperationException:无法解析目标框架'DNX,Version = v4.5.1'的以下依赖项:EntityFramework.Commands 7.0.0-beta4 EntityFramework.SqlServer 7.0.0-beta4 Microsoft.AspNet.Authentication.Cookies 1.0.0- beta4 Microsoft.AspNet.Authentication.Facebook 1.0.0-beta4 Microsoft.AspNet.Authentication.Google 1.0.0-beta4 Microsoft.AspNet.Authentication.MicrosoftAccount 1.0.0-beta4 Microsoft.AspNet.Authentication.Twitter 1.0.0-beta4 Microsoft .AspNet.Diagnostics 1.0.0-beta4 Microsoft.AspNet.Diagnostics.Entity 7.0.0-beta4 Microsoft.AspNet.Identity.EntityFramework 3.0.0-beta4 Microsoft.AspNet.Mvc 6.0.0-beta4 Microsoft.AspNet.Mvc.TagHelpers 6.0.0-beta4 Microsoft.AspNet.Server.IIS 1.0。0-beta4 Microsoft.AspNet.Server.WebListener 1.0.0-beta4 Microsoft.AspNet.StaticFiles 1.0.0-beta4 Microsoft.AspNet.Tooling.Razor 1.0.0-beta4 Microsoft.Framework.CodeGenerators.Mvc 1.0.0-beta4 Microsoft .Framework.ConfigurationModel.Json 1.0.0-beta4 Microsoft.Framework.ConfigurationModel.UserSecrets 1.0.0-beta4 Microsoft.Framework.Logging 1.0.0-beta4 Microsoft.Framework.Logging.Console 1.0.0-beta4 Microsoft.VisualStudio.Web .BrowserLink.Loader 14.0.0-beta4 搜索位置:/home/ubuntu/vNext/{name}/project.json /home/ubuntu/vNext/WebApplication1/src/{name}/project.json /home/ubuntu/vNext /WebApplication1/test/{name}/project.json /usr/lib/mono/4.5/{name}.dll /usr/lib/mono/4.5/Facades/{name}.dll 尝试运行'dnu 恢复'。

在 Microsoft.Framework.ApplicationHost.Program.Main (System.String[] args) [0x00000] in :0

这里有错误

我试图在项目文件夹中运行“dnu restore -s https://www.myget.org/F/aspnetvnext/api/v2/ ”,但遇到了一些其他错误

(download and install ... )
[17:48:08] Warning: gulp version mismatch:
[17:48:08] Global gulp is 3.9.0
[17:48:08] Local gulp is 3.8.11
[17:48:08] Using gulpfile ~/vNext/WebApplication1/src/WebApplication1/gulpfile.js
[17:48:08] Starting 'clean'...
[17:48:08] Finished 'clean' after 2.25 ms
[17:48:08] Starting 'copy'...
[17:48:08] Finished 'copy' after 20 ms
Restore complete, 358056ms elapsed
Errors in `/home/ubuntu/vNext/WebApplication1/src/WebApplication1/project.json
    Unable to locate Microsoft.VisualStudio.Web.BrowserLink.Loader >= 14.0.0-beta4
    Unable to locate Newtonsoft.Json >= 6.0.6
    Unable to locate System.Collections.Immutable >= 1.1.36
    Unable to locate System.Reflection.Metadata >= 1.0.21
    Unable to locate Ix-Async >= 1.2.3
    Unable to locate Remotion.Linq >= 2.0.0-alpha-002

所以,问题是,我做错了什么,还是 Visual Studio 2015 RC 创建的默认 ASP.NET vNext 项目无法在 Ubuntu(和其他 Linux 发行版)下运行?

4

1 回答 1

4

我相信您的应用程序的目标是完整的 .NET 4.5.1 框架,该框架仅适用于 Windows。您可以将 DNX 与 .NET451 (Windows)、.NET Core(跨平台)和 Mono(跨平台)一起使用。

尝试以 .NET Core 为目标。另一种选择是使用 Yeoman 以“Linux 方式”创建一个新项目。

输出关键点:

System.InvalidOperationException: Failed to resolve the following dependencies for target framework 'DNX,Version=v4.5.1'

还有一些 IIS 参考资料:)

Microsoft.AspNet.Server.IIS 1.0.0-beta4
于 2015-06-21T13:27:52.367 回答