J'ai créé mon application console à l'aide de dnu build
commande sur mon Mac. La sortie est MyApp.dll
.
Comme ce n'est pas MyApp.exe
, comment puis-je l'exécuter sur Windows, ou même sur Mac?
Le code est:
using System;
class Program
{
public static void Main()
{
Console.WriteLine("Hello from Mac");
}
}
Ajoutez ceci à votre fichier project.json:
"compilationOptions": {
"emitEntryPoint": true
},
Il générera MyApp.exe sur Windows (dans bin/Debug) ou les fichiers exécutables sur d'autres plateformes.
Edit: 30/01/2017
Ce n'est plus suffisant. Vous avez maintenant la possibilité entre le déploiement dépendant du Framework et le déploiement autonome comme décrit ici .
Forme courte:
Déploiement dépendant du framework (le noyau .net est présent sur le système cible)
dotnet MyApp.dll
Déploiement autonome (tous les composants, y compris le noyau d'exécution .net, sont inclus dans l'application)
"type": "platform"
de project.jsondotnet build -r win7-x64
MyApp.exe
fichier project.json:
{
"version": "1.0.0-*",
"buildOptions": {
"emitEntryPoint": true
},
"frameworks": {
"netcoreapp1.0": {
"dependencies": {
"Microsoft.NETCore.App": {
"version": "1.0.1"
}
}
}
},
"imports": "dnxcore50",
"runtimes": { "win7-x64": {} }
}
Vous pouvez utiliser dotnet publish
pour générer une sortie .exe pour votre application console.
Plus de détails: publier des applications .NET Core avec la CLI