Jak skompilować F # w dowolnej wersji na komputerze Mac?
(Jestem świadomy istniejącego pytania o przepełnienie stosu Jak używać F # 4.7 na Macu ?, które jest bardzo podobne, ale nie identyczne i nie ma jeszcze rozwiązania)
Na moim komputerze Mac (Catalina 10.15.7) zainstalowałem .NET core za pomocą tego linku bez żadnych problemów.
Komenda
dotnet --help
poprawnie zwraca pomoc.
Podczas próby zainicjowania nowego projektu kończy się niepowodzeniem:
$ dotnet new –lang f# Getting ready... Couldn't find an installed template that matches the input, searching online for one that does... No templates found matching: '–lang'. $ dotnet new --lang "f#"
Invalid input switch:
--lang
f#
Run dotnet new --help for usage information.
See https://aka.ms/dotnet-install-templates to learn how to install additional template packs.
Jak więc rozpocząć projekt lub uruchomić plik F # na komputerze Mac? Czy istnieje aktualny wpis na blogu zawierający samouczek dotyczący instalowania kompilatora F #?
----- EDYTOWAĆ -----
Polecenie dotnet newzwraca:
$ dotnet new
Templates Short Name Language Tags
-------------------------------------------- -------------- ------------ ----------------------
Console Application console [C#], F#, VB Common/Console
Class library classlib [C#], F#, VB Common/Library
Worker Service worker [C#], F# Common/Worker/Web
Unit Test Project mstest [C#], F#, VB Test/MSTest
NUnit 3 Test Project nunit [C#], F#, VB Test/NUnit
NUnit 3 Test Item nunit-test [C#], F#, VB Test/NUnit
xUnit Test Project xunit [C#], F#, VB Test/xUnit
Razor Component razorcomponent [C#] Web/ASP.NET
Razor Page page [C#] Web/ASP.NET
MVC ViewImports viewimports [C#] Web/ASP.NET
MVC ViewStart viewstart [C#] Web/ASP.NET
Blazor Server App blazorserver [C#] Web/Blazor
Blazor WebAssembly App blazorwasm [C#] Web/Blazor/WebAssembly
ASP.NET Core Empty web [C#], F# Web/Empty
ASP.NET Core Web App (Model-View-Controller) mvc [C#], F# Web/MVC
ASP.NET Core Web App webapp [C#] Web/MVC/Razor Pages
ASP.NET Core with Angular angular [C#] Web/MVC/SPA
ASP.NET Core with React.js react [C#] Web/MVC/SPA
ASP.NET Core with React.js and Redux reactredux [C#] Web/MVC/SPA
Razor Class Library razorclasslib [C#] Web/Razor/Library
ASP.NET Core Web API webapi [C#], F# Web/WebAPI
ASP.NET Core gRPC Service grpc [C#] Web/gRPC
dotnet gitignore file gitignore Config
global.json file globaljson Config
NuGet Config nugetconfig Config
Dotnet local tool manifest file tool-manifest Config
Web Config webconfig Config
Solution File sln Solution
Protocol Buffer File proto Web/gRPC
Examples:
dotnet new mvc --auth Individual
dotnet new web
dotnet new --help
dotnet new classlib --help
Odpowiedzi
Uważaj na formatowanie podczas kopiowania z witryn internetowych
Myślnik w pytaniu –langnie jest znakiem minus -, jest to półpauza . Podejrzewam, że skopiowałeś polecenie ze strony internetowej, która zamieniła znak minus na półpauzę. Jest to podobne do witryn zastępujących "lub 'zawierających cytaty typograficzne.
Wpisz polecenie bezpośrednio, zamiast je wklejać.
Oryginalna odpowiedź
newnie ma --langopcji. Spróbuj -langlub --languagedo listy wszystkich dostępnych szablonów dla języka. Aby określić f#typ, na f#przykład:
> dotnet new -lang f#
These templates matched your input: language='f#'.
Templates Short Name Language Tags
-------------------------- ---------- -------- -----------------
Console Application console F# Common/Console
Class library classlib F# Common/Library
Worker Service worker F# Common/Worker/Web
Unit Test Project mstest F# Test/MSTest
NUnit 3 Test Project nunit F# Test/NUnit
NUnit 3 Test Item nunit-test F# Test/NUnit
xUnit Test Project xunit F# Test/xUnit
ASP.NET Core Empty web F# Web/Empty
ASP.NET Core Web App (M... mvc F# Web/MVC
ASP.NET Core Web API webapi F# Web/WebAPI