Wie kompiliere ich F # in einer beliebigen Version auf einem Mac?
(Mir ist die vorhandene Frage zum Stapelüberlauf bekannt. Wie wird F # 4.7 auf einem Mac verwendet? Das ist sehr ähnlich, aber nicht identisch und hat noch keine Lösung.)
Auf meinem Mac (Catalina 10.15.7) habe ich den .NET-Kern über diesen Link ohne Probleme installiert .
Der Befehl
dotnet --help
gibt die Hilfe korrekt zurück.
Beim Versuch, ein neues Projekt zu initialisieren, schlägt Folgendes fehl:
$ 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.
Wie starte ich ein Projekt oder führe eine F # -Datei auf einem Mac aus? Gibt es einen aktuellen Blog-Beitrag mit einem Tutorial zur Installation eines F # -Compilers?
----- BEARBEITEN -----
Der Befehl dotnet new
gibt Folgendes zurück:
$ 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
Antworten
Achten Sie beim Kopieren von Websites auf die Formatierung
Der Bindestrich in der Frage –lang
ist nicht das Minuszeichen -
, sondern ein Bindestrich . Ich vermute, Sie haben den Befehl von einer Website kopiert, die das Minuszeichen durch einen Bindestrich ersetzt hat. Dies ähnelt Websites, die Typografie-Anführungszeichen ersetzen "
oder ersetzen '
.
Geben Sie den Befehl direkt ein, anstatt ihn einzufügen.
Ursprüngliche Antwort
new
hat keine --lang
Option. Versuchen -lang
oder --language
alle verfügbaren Vorlagen für eine Sprache aufzulisten. So geben Sie f#
Folgendes an f#
: z.
> 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