尝试 运行 在 Ubuntu 上新创建的 ASP.NET vNext 项目,但出现错误
Try to run newly created ASP.NET vNext project on Ubuntu but got errors
我想尝试新的 ASP.NET 5(也叫 vNext?),所以我下载了 ubuntu-14.04.2-server-amd64.iso,安装在 VMware Player 和 运行宁.
安装后,我运行以下命令:
- sudo apt-get 更新
- sudo apt-get upgrade
- sudo apt-get install nodejs-legacy npm
- sudo npm install -g gulp
- sudo npm install -g bower
参考https://github.com/aspnet/home,我按照步骤:
- 获取单声道
- 获取 libuv
- 获取 DNVM
- 将源添加到 NuGet.config
然后我在 "ASP.NET 5 Preview Template" (Visual Studio Community 2015 RC) 中选择 "Web site" 创建一个 ASP.NET 项目。我在 VMware Player 中将整个项目文件夹上传到 ubuntu 服务器 运行ning。
再按照步骤操作即可:
- cd 到项目文件夹
- dnu 恢复
(download and install ...)
Writing lock file /home/ubuntu/vNext/WebApplication1/src/WebApplication1/project.lock.json
npm WARN package.json ASP.NET@0.0.0 No description
npm WARN package.json ASP.NET@0.0.0 No repository field.
npm WARN package.json ASP.NET@0.0.0 No README data
[18:04:44] Warning: gulp version mismatch:
[18:04:44] Global gulp is 3.9.0
[18:04:44] Local gulp is 3.8.11
[18:04:44] Using gulpfile ~/vNext/WebApplication1/src/WebApplication1/gulpfile.js
[18:04:44] Starting 'clean'...
[18:04:44] Finished 'clean' after 5.43 ms
[18:04:44] Starting 'copy'...
[18:04:44] Finished 'copy' after 16 ms
Restore complete, 217628ms elapsed
- dnx。红隼
System.InvalidOperationException: Failed to resolve the following
dependencies for target framework '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
Searched Locations:
/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
Try running 'dnu restore'.
at 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 发行版)?
我相信您的应用程序针对的是完整的 .NET 4.5.1 框架,该框架仅适用于 Windows。您可以将 DNX 与 .NET451 (Windows)、.NET Core(跨平台)和 Mono(跨平台)一起使用。
尝试以 .NET Core 为目标。另一种选择是使用 Yeoman 创建一个新项目 "the Linux way"。
输出中的关键点:
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
我想尝试新的 ASP.NET 5(也叫 vNext?),所以我下载了 ubuntu-14.04.2-server-amd64.iso,安装在 VMware Player 和 运行宁.
安装后,我运行以下命令:
- sudo apt-get 更新
- sudo apt-get upgrade
- sudo apt-get install nodejs-legacy npm
- sudo npm install -g gulp
- sudo npm install -g bower
参考https://github.com/aspnet/home,我按照步骤:
- 获取单声道
- 获取 libuv
- 获取 DNVM
- 将源添加到 NuGet.config
然后我在 "ASP.NET 5 Preview Template" (Visual Studio Community 2015 RC) 中选择 "Web site" 创建一个 ASP.NET 项目。我在 VMware Player 中将整个项目文件夹上传到 ubuntu 服务器 运行ning。
再按照步骤操作即可:
- cd 到项目文件夹
- dnu 恢复
(download and install ...) Writing lock file /home/ubuntu/vNext/WebApplication1/src/WebApplication1/project.lock.json npm WARN package.json ASP.NET@0.0.0 No description npm WARN package.json ASP.NET@0.0.0 No repository field. npm WARN package.json ASP.NET@0.0.0 No README data [18:04:44] Warning: gulp version mismatch: [18:04:44] Global gulp is 3.9.0 [18:04:44] Local gulp is 3.8.11 [18:04:44] Using gulpfile ~/vNext/WebApplication1/src/WebApplication1/gulpfile.js [18:04:44] Starting 'clean'... [18:04:44] Finished 'clean' after 5.43 ms [18:04:44] Starting 'copy'... [18:04:44] Finished 'copy' after 16 ms Restore complete, 217628ms elapsed
- dnx。红隼
System.InvalidOperationException: Failed to resolve the following dependencies for target framework '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 Searched Locations: /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 Try running 'dnu restore'.
at 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 发行版)?
我相信您的应用程序针对的是完整的 .NET 4.5.1 框架,该框架仅适用于 Windows。您可以将 DNX 与 .NET451 (Windows)、.NET Core(跨平台)和 Mono(跨平台)一起使用。
尝试以 .NET Core 为目标。另一种选择是使用 Yeoman 创建一个新项目 "the Linux way"。
输出中的关键点:
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