J'ai une application .NET Core 2.0 que je veux exécuter sur un serveur Linux.L'application .NET Core 2.0 sous Linux avec superviseur ne peut pas s'exécuter en raison de ArgumentNullException
Tout est mis en place correctement et si je cours dotnet MyApplication.dll
manuellement alors l'application commence et aller à l'URL dans le navigateur fonctionne très bien.
Je veux démarrer automatiquement l'application avec supervisor
comme j'en ai vu d'autres en ligne.
Le superviseur est installé et configuré pour exécuter mon application, mais l'application .NET ne peut pas démarrer et je peux voir les erreurs dans le journal des erreurs supervisor
.
System.ArgumentNullException: Value cannot be null.
Parameter name: path1
at System.IO.Path.Combine(String path1, String path2)
at Microsoft.DotNet.Configurer.CliFallbackFolderPathCalculator.get_DotnetUserProfileFolderPath()
at Microsoft.DotNet.Configurer.FirstTimeUseNoticeSentinel..ctor(CliFallbackFolderPathCalculator cliFallbackFolderPathCalculator)
at Microsoft.DotNet.Cli.Program.ProcessArgs(String[] args, ITelemetry telemetryClient)
at Microsoft.DotNet.Cli.Program.Main(String[] args)
configuration supervisor
comme suit:
[program:myapplication]
command=/usr/bin/dotnet /var/www/myapplication.mydomain/MyApplication.dll
directory=/var/www/myapplication.mydomain
autostart=true
autorestart=true
stderr_logfile=/var/log/websites/myapplication.mydomain.err.log
stdout_logfile=/var/log/websites/myapplication.mydomain.out.log
environment=ASPNETCORE_ENVIRONMENT=Production
user=myuser
stopsignal=INT
dotnet --info
comme suit:
.NET Command Line Tools (2.0.0)
Product Information:
Version: 2.0.0
Commit SHA-1 hash: cdcd1928c9
Runtime Environment:
OS Name: ubuntu
OS Version: 16.04
OS Platform: Linux
RID: ubuntu.16.04-x64
Base Path: /usr/share/dotnet/sdk/2.0.0/
Microsoft .NET Core Shared Framework Host
Version : 2.0.0
Build : e8b8861ac7faf042c87a5c2f9f2d04c98b69f28d
aimerions obtenir ce travail!
également posté cette question sur GitHub here
Cela se produira également si le nom de fichier dll dans la commande est faux aussi, comme Iv'e vient de le découvrir :-) – shawty