Verwendung von nuget mit fsharp unter Linux

8

Es sind meine ersten Stunden mit F #, ich spiele mit Ubuntu Linux (14.04), aber ich habe keine Ahnung, wie man Abhängigkeiten mit nuget einbaut. Ich habe nuget.exe funktioniert gut auf Mono und ich kann nuget install Pakete; Sie landen in meinem aktuellen Verzeichnis. Aber dann kann ich sie nicht importieren oder aus meiner example.fs -Datei öffnen. Ich habe verschiedene Möglichkeiten ausprobiert, aber ohne Erfolg. Muss ich eine Projektdatei schreiben oder FAKE verwenden? Ich konnte kein Tutorial finden, das die minimal notwendigen Schritte zum Einrichten eines einfachen Projekts beschreibt.

Was muss ich tun, um auf Abhängigkeiten zuzugreifen, die ich mit nuget installiert habe?

    
hpk42 12.10.2014, 16:37
quelle

2 Antworten

7

Die kurze Antwort ist, dass es nicht ganz unkompliziert ist. Die lange Antwort ist, dass Sie das Problem auf verschiedene Arten angehen können. Alle Methoden, die ich hier vorschlage, verwenden die MSBuild .fsproj-Projekte, so dass Sie mit xbuild MyProject.fsproj erstellen können. Es ist erwähnenswert, dass FAKE-Skripte auch fsproj-Projekte verwenden und für die eigentliche Kompilierung an xbuild übergeben werden. Die fsharp.org Website einige Anweisungen auf Bootstrapping NuGet Konfiguration hat und ist eine großartige Ressource im Allgemeinen .

  1. Verwenden Sie MonoDevelop. Ich empfehle, aus der Quelle zu bauen. Erhalte ein Tag aus Ссылка und folge den Anweisungen genau. Dann installiere das Nuget-Plugin . Erstellen Sie ein F # -Projekt und verwenden Sie die Schnittstelle in MonoDevelop, um NuGet-Pakete zu Ihrem Projekt hinzuzufügen. Sie können dann über die Befehlszeile oder von MonoDevelop erstellen.

  2. Suchen Sie ein bestehendes Projekt, das NuGet verwendet, nehmen Sie es auf und verwenden Sie den Editor Ihrer Wahl. Ein schwergewichtiges Beispiel ist Ссылка , Sie können andere dort finden. Sobald Sie dieses Projekt heruntergeladen haben, können Sie sehen, wie Sie die Datei nuget.config bearbeiten, um Ihre Abhängigkeiten anzupassen.

  3. Ein aktuelles Projekt, Paket , bietet eine wirklich Befehlszeilen Annäherung an das Problem endlich. Sie müssen wieder ein .fsproj Skelett (wie dieses Beispiel ), aber Sie können dann eine sehr einfache Abhängigkeitsdatei erstellen. Laden Sie die neueste Version von Paket von Github herunter. Das Ausführen von mono paket.exe install wird dann diese Datei verwenden, um die Abhängigkeiten von NuGet abzurufen und sie zu Ihren .fsproj als Referenzen hinzuzufügen.

Es gibt ein kleines Bootstrapping-Problem, aber jeder dieser Ansätze sollte Sie über den anfänglichen Buckel bringen.

    
rneatherway 13.10.2014, 14:50
quelle
0

Ohne das Skript zu sehen, das du machst, ist es schwierig zu wissen, was genau das Problem ist. Die einfachste Möglichkeit zum Einrichten ist jedoch das Erstellen einer .fsx-Datei (und nicht einer .fs-Datei). Sie können dann dlls mit der #r-Syntax verwenden, z. B.

%Vor%

Sie können dann von dort wie gewohnt auf den Code zugreifen.

    
Isaac Abraham 13.10.2014 14:38
quelle

Tags und Links