It is a bug in the code - I have put in a fix for it. Your config is perfectly valid.
Craig -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Justin Daubenmire Sent: Wednesday, 7 April 2010 11:58 p.m. To: [email protected] Subject: [ccnet-user] DuplicateFinder error with latest nightly build All, I am using the latest nightly build for cc.net 1.5 and I am getting an error when trying to use the DuplicateFinder task. Here is my ccnet.config file dupfinder task and then the error from the ccnet.log file. How can I fix this error? ccnet.config: <dupfinder> <executable>C:\build\tools\DuplicateFinder\dupfinder.exe</executable> <fileMask>*.cs</fileMask> <includeCode>True</includeCode> <excludeLines> <line>using System.*</line> </excludeLines> <excludeFiles> <file>AssemblyInfo.cs</file> </excludeFiles> <inputDir>c:\build\projects\MyApp\Code\App\</inputDir> <recurse>True</recurse> <shortenNames>False</shortenNames> <threshold>2</threshold> <timeout>600</timeout> <width>2</width> </dupfinder> ccnet.log 2010-04-07 07:55:26,589 [CCNet Server:ERROR] A fatal error occurred while starting the CruiseControl.NET server 2010-04-07 07:55:26,652 [CCNet Server:ERROR] INTERNAL ERROR: Object reference not set to an instance of an object. ---------- System.NullReferenceException: Object reference not set to an instance of an object. at ThoughtWorks.CruiseControl.Core.Tasks.DupFinderTask.QuoteSpaces(String value) at ThoughtWorks.CruiseControl.Core.Tasks.DupFinderTask.GetProcessFilename() at ThoughtWorks.CruiseControl.Core.Tasks.BaseExecutableTask.Validate(IConfigura tion configuration, ConfigurationTrace parent, IConfigurationErrorProcesser errorProcesser) at ThoughtWorks.CruiseControl.Core.Project.ValidateItem(Object item, IConfiguration configuration, ConfigurationTrace parent, IConfigurationErrorProcesser errorProcesser) at ThoughtWorks.CruiseControl.Core.Project.ValidateItems(IEnumerable items, IConfiguration configuration, ConfigurationTrace parent, IConfigurationErrorProcesser errorProcesser) at ThoughtWorks.CruiseControl.Core.Project.Validate(IConfiguration configuration, ConfigurationTrace parent, IConfigurationErrorProcesser errorProcesser) at ThoughtWorks.CruiseControl.Core.Config.NetReflectorConfigurationReader.Valid ateConfiguration(Configuration value, IConfigurationErrorProcesser errorProcesser) at ThoughtWorks.CruiseControl.Core.Config.NetReflectorConfigurationReader.Read( XmlDocument document, IConfigurationErrorProcesser errorProcesser) at ThoughtWorks.CruiseControl.Core.Config.DefaultConfigurationFileLoader.Load(F ileInfo configFile) at ThoughtWorks.CruiseControl.Core.Config.FileConfigurationService.Load() at ThoughtWorks.CruiseControl.Core.Config.FileWatcherConfigurationService.Load( ) at ThoughtWorks.CruiseControl.Core.Config.CachingConfigurationService.Load() at ThoughtWorks.CruiseControl.Core.CruiseServer..ctor(IConfigurationService configurationService, IProjectIntegratorListFactory projectIntegratorListFactory, IProjectSerializer projectSerializer, IProjectStateManager stateManager, IFileSystem fileSystem, IExecutionEnvironment executionEnvironment, List`1 extensionList) at ThoughtWorks.CruiseControl.Core.CruiseServerFactory.CreateLocal(String configFile) at ThoughtWorks.CruiseControl.Core.CruiseServerFactory.Create(Boolean remote, String configFile) at ThoughtWorks.CruiseControl.Service.AppRunner.CreateAndStartCruiseServer() at ThoughtWorks.CruiseControl.Service.AppRunner.Run(String action, Boolean usesShadowCopying) ---------- -- To unsubscribe, reply using "remove me" as the subject.
