2009-04-21 10 views
3

J'ai un fichier de construction nant qui fonctionne bien à partir de la ligne cmd mais pas dans TeamCity.La construction de Nant échoue - mais seulement dans TeamCity

J'ai vérifié que le COMAND j'Execute est exécuté à partir du même répertoire TC travaille et vérifié toutes les références, mais il ne fonctionne toujours pas avec l'erreur suivante:

[build] Compile the project using Debug configuration... 
[10:30:05]: [build] msbuild (1m:18s) 
[10:30:06]: [msbuild] Starting MSBuild... 
[10:30:07]: [msbuild] Starting 'C:\WINDOWS\Microsoft.NET\Framework\v3.5\msbuild.exe (@"G:\TeamCity\buildAgent\work\9de21b975852dd95\src\Irm.Web.App\Irm.Web.App.sln.teamcity.msbuild.tcargs")' in 'G:\TeamCity\buildAgent\work\9de21b975852dd95' 
[10:30:09]: [msbuild] MSBUILD : error MSB1025: An internal failure occurred while running MSBuild. 
[10:31:18]: [msbuild] Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object. 
[10:31:18]: [msbuild] at Microsoft.Build.CommandLine.MSBuildApp.BuildProject(String projectFile, String[] targets, String toolsVersion, BuildPropertyGroup propertyBag, ILogger[] loggers, LoggerVerbosity verbosity, DistributedLoggerRecord[] distributedLoggerRecords, Boolean needToValidateProject, String schemaFile, Int32 cpuCount, Boolean enableNodeReuse) 
[10:31:18]: [msbuild] at Microsoft.Build.CommandLine.MSBuildApp.Execute(String commandLine) 
[10:31:18]: [msbuild] at Microsoft.Build.CommandLine.MSBuildApp.Main() 
[10:31:24]: G:\TeamCity\buildAgent\work\9de21b975852dd95\Irm-deploy.build(22,10): External Program Failed: msbuild (return code was -1073741819) 

Est-ce que quelqu'un a une idée pourquoi TC ne serait pas en mesure d'exécuter la construction mais je sais que cela fonctionne?

Vive

w: //

+0

Que contient le fichier nant? – Paco

+0

avez-vous déjà déterminé la cause de cela. avoir exactement le même problème ... – time4tea

Répondre

1

agent ville d'équipe fonctionne sous utilisateur différent que celui que vous utilisez. Si je me souviens bien, vous pouvez changer cela lorsque vous installez l'agent ou vous pouvez changer l'utilisateur sous lequel le service de l'agent est en cours d'exécution. En outre, vous pouvez choisir de ne pas exécuter l'agent en tant que service et de l'exécuter en tant que programme de ligne de commande normal.

+0

Y at-il de toute façon pour changer un agent de construction existant pour exécuter en tant que cmd? –

+0

Quelque chose comme ceci: \ buildagent \ bin \ agent.bat démarrer – bh213

9

Par défaut, le service TeamCity Build Agent s'exécute en tant que compte système local. Si vos tests ou script de construction exigent quelque chose qui ne peut être consulté à ce compte (dans mon cas, il était une connexion de base de données) vous avez deux options:

  • Modifier les autorisations sur la ressource pour permettre l'accès par le compte système

  • Modifier le compte utilisé par le service d'agent de construction

Modification du compte de service est le même que pour tout autre service windows - via panneau de configuration/Outils d'administration/services

3

J'ai eu ce problème. La verbosité est-elle calme dans votre tâche msbuild? Si c'est le cas, retirez-le et cela pourrait fonctionner - cela a été fait pour moi. Voir aussi this reported bug (pas le mien).

+0

Il s'avère que c'était mon problème aussi, supprimé verbosité: calme et tout fonctionne. – Adam

+0

cela a fonctionné pour moi aussi – Miral

Questions connexes