Как скомпилировать F # в любой версии на Mac?

Jan 04 2021

(Мне известно о существующем вопросе о переполнении стека Как использовать F # 4.7 на Mac? Он очень похож, но не идентичен и пока не имеет решения)

На моем Mac (catalina 10.15.7) я без проблем установил ядро ​​.NET по этой ссылке .

Команда

dotnet --help

правильно возвращает справку.

При попытке инициализировать новый проект происходит сбой:

$ 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.

Итак, как мне запустить проект или запустить файл F # на Mac? Есть ли в блоге обновленное сообщение с инструкциями по установке компилятора F #?

----- РЕДАКТИРОВАТЬ -----

Команда dotnet newвозвращает:

$ 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

Ответы

3 PanagiotisKanavos Jan 04 2021 at 21:21

Следите за форматированием при копировании с веб-сайтов

Тире в вопросе - –langэто не минус -, а короткое тире . Я подозреваю, что вы скопировали команду с веб-сайта, заменив знак минус на короткое тире. Это похоже на замену сайтов "или 'цитат из типографики.

Введите команду напрямую, а не вставляйте ее.

Оригинальный ответ

newнет --langвыбора. Попробуйте -langили --languageперечислить все доступные шаблоны для языка. Чтобы указать f#тип, f#например:

> 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