2012-01-10 15 views
15

Estoy intentando instalar un paquete nuget que ha especificado incorrectamente una de sus dependencias. Common.Logging.Log4Net requiere log4net = 1.2.10; sin embargo, el paquete nuget especifica log4net> = 1.2.10. Incluso si instalo manualmente la versión anterior de log4net, nuget actualiza log4net a 1.2.11 cuando instalo Common.Logging.Log4Net. ¿Cómo puedo obtener Nuget para eludir la resolución de dependencia o al menos preferir paquetes instalados de una versión suficiente?¿Cómo puedo evitar que nuget actualice las dependencias?

Respuesta

33

Con el fin de evitar la dependencia resolución puede utilizar la opción -IgnoreDependencies:

Install-Package -IgnoreDependencies ThePackageName 

Usted debe ser capaz de bloquear el paquete a una versión específica de la packages.config y ajuste de la mano de edición El atributo allowedVersions le indica el rango de versión que desea permitir.

<package id="Common.Logging.Log4Net" version="1.2.10" 
    allowedVersions="[1.2,1.2.10]" /> 

Tenga en cuenta que, sin embargo, no actualizará la versión del paquete, incluso cuando se actualice explícitamente el paquete.

Consulte el nuget versioning documentation para obtener más información sobre el control de versiones.

Cuestiones relacionadas