I'm trying to create a build configuration, without code analysis or contracts, for ncrunch to use. But I seem to have dug myself into a hole, because I can't get ncrunch to build the solution at all anymore. I have two build configurations: Dev and ncrunch.
If I set the build configuration setting to be empty, meaning use the default, I get this error:
Quote:Errors occurred while trying to load the project file:
The OutputPath property is not set for project 'nCrunchTemp_43d6cc7c-91da-4b9b-8022-86adeb75b4ad'. Please check to make sure that you have specified a valid combination of Configuration and Platform for this project. Configuration='Debug' Platform='AnyCPU'. You may be seeing this message because you are trying to build a project without a solution file, and have specified a non-default Configuration or Platform that doesn't exist for this project.
NCrunch: This error is commonly caused by projects that are relying on the selected build configuration provided by Visual Studio in order to set the $(Platform) and $(Configuration) MSBuild properties during a build. Unless configured otherwise, NCrunch will normally use the default $(Configuration) and $(Platform) properties that are specified in a .proj file - thus in order for your project to build with NCrunch it must be possible to build the project using command line MSBuild without needing to manually inject build properties. You will most likely need to edit your .proj file to align its default $(Configuration) and $(Platform) properties with the property groups provided in the file.
But if I use an explicit 'ncrunch' or 'dev' I get a null ref exception:
Quote: (0): System.NullReferenceException: Object reference not set to an instance of an object.
at Mono.Cecil.SignatureReader.GetGenericParameter(GenericParameterType type, UInt32 var)
at Mono.Cecil.SignatureReader.ReadTypeSignature(ElementType etype)
at Mono.Cecil.SignatureReader.ReadGenericInstanceSignature(IGenericParameterProvider provider, IGenericInstance instance)
at Mono.Cecil.SignatureReader.ReadTypeSignature(ElementType etype)
at Mono.Cecil.MetadataReader.ReadFieldType(UInt32 signature)
at Mono.Cecil.MetadataReader.ReadField(UInt32 field_rid)
at Mono.Cecil.MetadataReader.ReadFields(TypeDefinition type)
at Mono.Cecil.TypeDefinition.<get_Fields>b__c(TypeDefinition type, MetadataReader reader)
at Mono.Cecil.ModuleDefinition.Read[TItem,TRet](TItem item, Func`3 read)
at Mono.Cecil.TypeDefinition.get_Fields()
at Mono.Cecil.MetadataReader.LookupField(UInt32 rid)
at Mono.Cecil.MetadataReader.GetFieldDefinition(UInt32 rid)
at Mono.Cecil.MetadataReader.LookupToken(MetadataToken token)
at Mono.Cecil.Cil.CodeReader.ReadOperand(Instruction instruction)
at Mono.Cecil.Cil.CodeReader.ReadCode()
at Mono.Cecil.Cil.CodeReader.ReadFatMethod()
at Mono.Cecil.Cil.CodeReader.ReadMethodBody()
at Mono.Cecil.Cil.CodeReader.ReadMethodBody(MethodDefinition method)
at Mono.Cecil.MethodDefinition.<get_Body>b__2(MethodDefinition method, MetadataReader reader)
at Mono.Cecil.ModuleDefinition.Read[TItem,TRet](TItem item, Func`3 read)
at Mono.Cecil.MethodDefinition.get_Body()
at #=qUxeqa6hlCRcyPCLUjLUb7HGoX4GMD1_YFK_fMiL90yS3s3kngB1Rug_cHUsZUv6Nz2b4NRgBTuezuwBO8NrQTg==.#=qJ1tNQvB19sPtvTiEgDo22dJshRfli34cydHFqYdYRjE=(Collection`1 #=qaqfqZGbOg0nwSDABAINyIg==)
at #=qUxeqa6hlCRcyPCLUjLUb7HGoX4GMD1_YFK_fMiL90yS3s3kngB1Rug_cHUsZUv6Nz2b4NRgBTuezuwBO8NrQTg==.#=qDqDlHqlxQdYhDXvsTU2ekijUk$8LdoTtldb$s5nfuaw=(IEnumerable`1 #=qSI7tSD5t3ZC7Sri5PQhnuA==)
at #=qUxeqa6hlCRcyPCLUjLUb7HGoX4GMD1_YFK_fMiL90yS3s3kngB1Rug_cHUsZUv6Nz2b4NRgBTuezuwBO8NrQTg==.#=qVXfmQMLUDaf7zrmwv79Zs7hextb83Nro8vigB5gqLgo=()
at nCrunch.Compiler.StaticManipulation.BuiltAssembly.Instrument(IMasterExecutionMap masterExecutionMap, IDictionary`2 codeFileIDsByFilePath, Boolean proxyProcessIsActive, Int32 componentId)
at nCrunch.Compiler.RemoteBuildRunner.#=qdNy3eJz0F0f31G1txMSXAEVeC9Nhq_sDLM7MDpb6eP4=(ComponentBuildParameters #=qFM_k3V64cVZZd6sixdAjJQ==, String #=q5kD4ablNlc2cGuLZ8hO5ofKufkiyaVkhJYyyaY6AOjk=, BuildOutput #=q5ZP__l8J9fM4dLoL5$V4RA==, String #=q24Q3Qm4opmQYnf8oCoGTHsDpE$DxmRGdIjH_hjrrCNU=)
at nCrunch.Compiler.RemoteBuildRunner.Build(ComponentBuildParameters parameters)
I'm not really sure how to fix this problem without completely recreating the solution or something.