es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

MSBuild -t:empaquetar ProyectoReferencia

Pregunta

Tengo una solución C# que contiene dos proyectos net472: Foo.csproj y Bar.csproj.

Los proyectos están en formato clásico (sin versión de SDK).

Los proyectos utilizan PackageReference como gestión de paquetes.

Foo.csproj depende de Bar.csproj.
Bar.csproj no es un paquete de NuGet.

Quiero crear un paquete NuGet de Foo.

He seguido estas instrucciones y he ejecutado el comando msbuild -t:pack Foo.csproj, que produce el archivo Foo.nupkg.

El problema es que Foo.nupkg contiene Foo.dll, pero no contiene Bar.dll.
Entonces, cuando intento instalar el paquete Foo a través de NuGet, recibo el siguiente error:

Unable to resolve dependency 'Bar'.

¿Qué me falta?
Espero haber proporcionado toda la información necesaria.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Parece que necesitas agregar Bar.dll al paquete Foo.nupkg. Puedes hacer esto agregando un elemento al archivo Foo.csproj. Este elemento debe incluir la ruta de acceso a Bar.dll y la carpeta de destino en el paquete. Por ejemplo:
    xml

    true lib\net472


    Esto agregará Bar.dll a la carpeta lib\net472 en el paquete Foo.nupkg.

Comments are closed.