2016-03-28 12 views
0

Ich habe eine WCF-Anwendung auf dem Qa-Server mit Jenkins bereitgestellt. Ich habe die folgende Fehlermeldung erhalten.Jenkins verwenden, um die Anwendung wcf auf QA zu implementieren, dann verweist es Datei in Jenkins-Server

 System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information. 
      at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module) 
      at System.Reflection.RuntimeModule.GetTypes() 
      at System.Reflection.Assembly.GetTypes() 
      at System.ComponentModel.Composition.Hosting.AssemblyCatalog.get_InnerCatalog() 
      at System.ComponentModel.Composition.Hosting.AssemblyCatalog.GetExports(ImportDefinition definition) 
      at System.Linq.Enumerable.<SelectManyIterator>d__14`2.MoveNext() 
      at System.ComponentModel.Composition.Hosting.CatalogExportProvider.InternalGetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition) 
      at System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition, IEnumerable`1& exports) 
      at System.ComponentModel.Composition.Hosting.CatalogExportProvider.GetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition) 
      at System.ComponentModel.Composition.Hosting.ExportProvider.GetExports(ImportDefinition definition, AtomicComposition atomicComposition) 
      at System.ComponentModel.Composition.Hosting.AggregateExportProvider.GetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition) 
      at System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExports(ImportDefinition definition, AtomicComposition atomicComposition, IEnumerable`1& exports) 
      at System.ComponentModel.Composition.Hosting.CompositionContainer.GetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition) 
      at System.ComponentModel.Composition.Hosting.ExportProvider.GetExports(ImportDefinition definition, AtomicComposition atomicComposition) 
      at System.ComponentModel.Composition.Hosting.ImportEngine.TryGetExports(ExportProvider provider, ComposablePart part, ImportDefinition definition, AtomicComposition atomicComposition) 
      at System.ComponentModel.Composition.Hosting.ImportEngine.TrySatisfyImportSubset(PartManager partManager, IEnumerable`1 imports, AtomicComposition atomicComposition) 
      at System.ComponentModel.Composition.Hosting.ImportEngine.TrySatisfyImportsStateMachine(PartManager partManager, ComposablePart part) 
      at System.ComponentModel.Composition.Hosting.ImportEngine.TrySatisfyImports(PartManager partManager, ComposablePart part, Boolean shouldTrackImports) 
      at System.ComponentModel.Composition.Hosting.ImportEngine.SatisfyImports(ComposablePart part) 
      at System.ComponentModel.Composition.Hosting.CompositionServices.TryInvoke(Action action) 
      at System.ComponentModel.Composition.Hosting.ComposablePartExportProvider.Compose(CompositionBatch batch) 
      at IRWebSvc.MEF..ctor() in e:\Jenkins\Jobs\IRWebSvc\workspace\Jenkins__IRWebSvc_dev\IRWebSvc\MEF.cs:line 24 
      at IRWebSvc.IRSvc.AddPage(String source, String xmlRequest) in e:\Jenkins\Jobs\IRWebSvc\workspace\Jenkins__IRWebSvc_dev\IRWebSvc\IRSvc.svc.cs:line 30 

Ich weiß nicht, warum es Dateien in e verweist: \ Jenkins \ Jobs \ IRWebSvc \ Arbeitsplatz \ Jenkins__IRWebSvc_dev \ IRWebSvc Ordner. Hier prüfe ich den Quellcode von Github.

Hier ist, wie ich kompilieren und die Anwendung verpacken.

  <Target Name="Compile" DependsOnTargets="WebConfigTransform"> 
      <MSBuild Projects="@(SolutionFile)" 
        Targets="Rebuild" 
        Properties="OutDir=%(BuildArtifacts.FullPath);Configuration=$(Configuration);Platform=$(BuildPlatform)" /> 
      </Target> 



      <Target Name="Package" DependsOnTargets="Compile"> 
      <PropertyGroup> 
       <PackageDir>@(BuildArtifacts)\</PackageDir> 
       <Source>@(BuildArtifacts)@(Website)</Source> 
       <Destination>@(BuildArtifacts)@(PackageFile)</Destination> 
      </PropertyGroup> 

      <MakeDir Directories="$(PackageDir)" /> 
      <Exec Command='"@(MsDeploy)" -verb:sync -source:iisApp="$(Source)" -dest:package="$(Destination)"' /> 
      </Target> 

Antwort

0

Ich habe die Schnittstelle in MEF geändert. Alle Module, die es verwenden, müssen neu bereitgestellt werden. Ich habe nur das verwendet, das ich benutzen muss. Deshalb bekomme ich diese Fehlermeldung.