我试图跟随https://github.com/enricosada/fsharp-dotnet-cli-samples/wiki/Getting-Started#hello-world开始使用我的mac上的f#和dotnet核心。
% mkdir helloworld % cd helloworld % dotnet new --lang "f#" Created new F# project in /Users/User/dotnet/helloworld. % ls Program.fs project.json
在这里,我已经知道,我所遵循的教程中没有NuGet.Config。然后
% dotnet restore log : Restoring packages for /Users/User/dotnet/helloworld/project.json... log : Restoring packages for tool 'dotnet-compile-fsc' in /Users/User/dotnet/helloworld/project.json... log : Writing lock file to disk. Path: /Users/User/dotnet/helloworld/project.lock.json log : /Users/User/dotnet/helloworld/project.json log : Restore completed in 2148ms. % dotnet run Project helloworld (.NETCoreApp,Version=v1.1) will be compiled because expected outputs are missing Compiling helloworld for .NETCoreApp,Version=v1.1 The specified framework 'Microsoft.NETCore.App', version '1.0.0' was not found. - Check application dependencies and target a framework version installed at: /usr/local/share/dotnet/shared/Microsoft.NETCore.App - The following versions are installed: 1.1.0 - Alternatively, install the framework version '1.0.0'. /usr/local/share/dotnet/dotnet compile-fsc @/Users/User/dotnet/helloworld/obj/Debug/netcoreapp1.1/dotnet-compile.rsp returned Exit Code 131 Compilation failed. 0 Warning(s) 0 Error(s) Time elapsed 00:00:00.4439997
Dotnet信息说
% dotnet --info .NET Command Line Tools (1.0.0-preview2-1-003177) Product Information: Version: 1.0.0-preview2-1-003177 Commit SHA-1 hash: a2df9c2576 Runtime Environment: OS Name: Mac OS X OS Version: 10.12 OS Platform: Darwin RID: osx.10.12-x64
答案 0 :(得分:2)
在使用dotnet new --lang "f#"
问题在于此依赖关系,您应该在project.json
文件中看到:dotnet-compile-fsc。
"tools": {
"dotnet-compile-fsc": "1.0.0-preview2.1-*"
},
在撰写本文时,这仅支持.Net Core 1.0。*运行时,而不是您安装的.Net Core 1.1。*运行时。
要解决此问题,您可以install the .Net Core 1.0.* runtime from here再次运行dotnet run
。 1.1。*和1.0。*运行时都可以在本地安装而不会出现问题。
供参考,here is the issue reported on GitHub。有一个修复,但它还没有在NuGet上。
答案 1 :(得分:1)
目前dotnet-compile-fsc
还没有使用.NET Core 1.1(当前,sdk preview2.1),只能使用.NET Core 1.0(LTS,sdk preview2)。
您可以使用dev Feed来解决执行dotnet restore
之类的问题,因为新的软件包还没有在nuget.org上
dotnet restore -f https://www.myget.org/F/netcorecli-fsc-preview2-1/api/v3/index.json
请参阅https://github.com/dotnet/netcorecli-fsc/wiki/.NET-Core-SDK-preview2.1了解更多信息/解决方法