Bugs item #1894309, was opened at 2008-02-15 10:17
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=402868&aid=1894309&group_id=31650

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Tasks
Group: 0.85
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: David Santos (dawuid)
Assigned to: Nobody/Anonymous (nobody)
Summary: Ndoc task doesn't use referencepaths node in build

Initial Comment:
Nant launches an exception when it's trying to generate ndoc documentation in 
assemblies that have external assemblies referenced:
{{{
     [ndoc] Writing project settings to 'C:\Documents and 
Settings\*****\Configuración local\Temp\tmp36.tmp'.
     [ndoc] NDoc project file: file://C:\Documents and 
Settings\*****\Configuración local\Temp\tmp36.tmp
     [ndoc] Initializing...
     [ndoc] Merging XML documentation...
     [ndoc] 
C:\workspace\SRX\SRXClientNET\SRXClientNet\SRXClientNet.build(621,10):
     [ndoc] Error building documentation.:
     [ndoc] NAnt.Core.BuildException: 
C:\workspace\SRX\SRXClientNET\SRXClientNet\SRXClientNet.build(621,10):
     [ndoc] Error building documentation. ---> NDoc.Core.DocumenterException: 
No se puede cargar el archivo o ensamblado
 'log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=904f2731fad1dd8f' 
ni una de sus dependencias. La definición
 del manifiesto del ensamblado no coincide con la referencia al ensamblado. 
(Excepción de HRESULT: 0x80131040) ---> Syst
em.IO.FileLoadException: No se puede cargar el archivo o ensamblado 'log4net, 
Version=1.2.10.0, Culture=neutral, PublicK
eyToken=904f2731fad1dd8f' ni una de sus dependencias. La definición del 
manifiesto del ensamblado no coincide con la ref
erencia al ensamblado. (Excepción de HRESULT: 0x80131040)
     [ndoc] Nombre de archivo: 'log4net, Version=1.2.10.0, Culture=neutral, 
PublicKeyToken=904f2731fad1dd8f'
     [ndoc]
     [ndoc] Server stack trace:
     [ndoc]    en System.ModuleHandle.ResolveType(Int32 typeToken, 
RuntimeTypeHandle* typeInstArgs, Int32 typeInstCount,
 RuntimeTypeHandle* methodInstArgs, Int32 methodInstCount)
     [ndoc]    en System.ModuleHandle.ResolveTypeHandle(Int32 typeToken, 
RuntimeTypeHandle[] typeInstantiationContext, R
untimeTypeHandle[] methodInstantiationContext)
     [ndoc]    en System.Reflection.Module.ResolveType(Int32 metadataToken, 
Type[] genericTypeArguments, Type[] genericM
ethodArguments)
     [ndoc]    en 
System.Reflection.CustomAttribute.FilterCustomAttributeRecord(CustomAttributeRecord
 caRecord, Metadata
Import scope, Assembly& lastAptcaOkAssembly, Module decoratedModule, 
MetadataToken decoratedToken, RuntimeType attribute
FilterType, Boolean mustBeInheritable, Object[] attributes, IList 
derivedAttributes, RuntimeType& attributeType, Runtime
MethodHandle& ctor, Boolean& ctorHasParameters, Boolean& isVarArg)
     [ndoc]    en System.Reflection.CustomAttribute.GetCustomAttributes(Module 
decoratedModule, Int32 decoratedMetadataT
oken, Int32 pcaCount, RuntimeType attributeFilterType, Boolean 
mustBeInheritable, IList derivedAttributes)
     [ndoc]    en 
System.Reflection.CustomAttribute.GetCustomAttributes(Assembly assembly, 
RuntimeType caType)
     [ndoc]    en System.Reflection.Assembly.GetCustomAttributes(Boolean 
inherit)
     [ndoc]    en NDoc.Core.Reflection.ReflectionEngine.WriteAssembly(XmlWriter 
writer, Assembly assembly)
     [ndoc]    en NDoc.Core.Reflection.ReflectionEngine.BuildXml(XmlWriter 
writer)
     [ndoc]    en 
NDoc.Core.Reflection.ReflectionEngine.MakeXmlFile(ReflectionEngineParameters 
rep, String xmlFile)
     [ndoc]    en 
System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr
 md, Object[] args, Ob
ject server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)
     [ndoc]    en 
System.Runtime.Remoting.Messaging.StackBuilderSink.PrivateProcessMessage(RuntimeMethodHandle
 md, Objec
t[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& 
outArgs)
     [ndoc]    en 
System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage 
msg, Int32 methodPtr, B
oolean fExecuteInContext)
     [ndoc]
     [ndoc] Exception rethrown at [0]:
     [ndoc]    en 
System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, 
IMessage retMsg)
     [ndoc]    en 
System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, 
Int32 type)
     [ndoc]    en 
NDoc.Core.Reflection.ReflectionEngine.MakeXmlFile(ReflectionEngineParameters 
rep, String xmlFile)
     [ndoc]    en 
NDoc.Core.Reflection.BaseReflectionDocumenter.MakeXmlFile(Project project, 
String fileName)
     [ndoc]    en NDoc.Documenter.Msdn.MsdnDocumenter.Build(Project project)
     [ndoc]
     [ndoc] AVS: El registro del enlace de ensamblado está desactivado.
     [ndoc] Para habilitar el registro de errores del enlace de ensamblado, 
establezca el valor de Registro [HKLM\Softwa
re\Microsoft\Fusion!EnableLog] (DWORD) como 1.
     [ndoc] Nota: existe una disminución del rendimiento asociada registro de 
errores del enlace de ensamblado.
     [ndoc] Para desactivar esta característica, elimine el valor de Registro 
[HKLM\Software\Microsoft\Fusion!EnableLog]
.
     [ndoc]
     [ndoc]    --- Fin del seguimiento de la pila de la excepción interna ---
     [ndoc]    en NDoc.Documenter.Msdn.MsdnDocumenter.Build(Project project)
     [ndoc]    en NAnt.DotNet.Tasks.NDocTask.ExecuteTask()
     [ndoc]    --- Fin del seguimiento de la pila de la excepción interna ---
     [ndoc]    en NAnt.DotNet.Tasks.NDocTask.ExecuteTask()
     [ndoc]    en NAnt.Core.Task.Execute()
}}}

This is the ndoc section that launches the error (documenters node has been 
removed for readibility):
{{{
#!xml
<ndoc failonerror="false" verbose="true">
    <assemblies basedir="${current.bin.dir}">
        <include name="SRXClientNet.dll" />
    </assemblies>
    <referencepaths>
        <include name="${build.libs}" />
    </referencepaths>
</ndoc>
}}}
Taking a look at temporal NDoc project file I have not found any reference 
about referencepath node (documenters node has been removed for readibility):
{{{
#!xml
<?xml version="1.0" encoding="utf-8"?>
<project>
  <assemblies>
    <assembly 
location="C:\workspace\SRX\SRXClientNET\SRXClientNet\build\package\SRXClientNet-1.0\bin\net\1.1\release\SRXClientNet.dll"
 
documentation="C:\workspace\SRX\SRXClientNET\SRXClientNet\build\package\SRXClientNet-1.0\bin\net\1.1\release\SRXClientNet.xml"
 />
  </assemblies></project>
}}}

NDocTask.cs contains no code to manage <referencepaths> node.

We suggest the next code to fix this problem (between assemblies section and 
summaries section):

{{{
#!C#
// write out the references section
writer.WriteStartElement("referencePaths");
foreach (string directory in ReferencePaths.Includes) 
{
   writer.WriteStartElement("referencePath");
   writer.WriteAttributeString("path", directory);
   writer.WriteEndElement();
}
writer.WriteEndElement();
}}}

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=402868&aid=1894309&group_id=31650

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
nant-developers mailing list
nant-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nant-developers

Reply via email to