Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

294
Visualizações
¿Cómo maneja Nuget las referencias de proyectos al publicar paquetes?

Entonces, por ejemplo, digamos que tengo 2x csproj llamados A y B

Tenemos una referencia de proyecto en B a A , por lo que hay algunos escenarios aquí y no puedo encontrar información sobre cómo se maneja:

Escenario 1: Publicar B cuando A no es un paquete publicado

Supongo que en este caso fallaría al intentar publicar B porque no puede encontrar una dependencia adecuada en nuget para A , aunque supongo que aquí sería bueno aclararlo.

Escenario 2: publicar ambos paquetes de forma independiente

Este es uno de los escenarios más interesantes, así que digamos que nada ha cambiado en A pero queremos publicar B , ¿cómo traduce la referencia del proyecto de A a una dependencia nuget en A ? ¿Simplemente busca la última versión de A en nuget y agrega una dependencia a esa?

Escenario 3: ambos paquetes se publican juntos

Este es uno de los escenarios más comunes y, en este caso, puedo ver que cada vez que publica un paquete en la solución, también empaqueta nuevas versiones para todo lo demás, por lo que sus números de versión se mantienen en línea, esto parece crear dependencias para todas las mismas versiones. como se esperaba aquí.


Entonces, los escenarios 1 y 2 son las partes principales que me interesan, ya que comenzamos una discusión sobre si deberíamos tener referencias de proyectos frente a referencias de paquetes entre proyectos en la misma solución, y si va a tener referencias de paquetes a proyectos locales, parece inútil , también pueden estar en su propio repositorio. Entonces, solo quería saber cómo nuget maneja la publicación real para que podamos continuar el debate con algunos datos sobre el control de versiones, etc.

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Depende de las opciones que proporcione al comando para crear el paquete nuget. Puede crearlo de forma independiente o incluir proyectos referenciados.

Para incluir aquellos a los que se hace referencia dentro de su proyecto, por ejemplo, para que B incluya A , puede ejecutar el comando pack con la siguiente opción:

nuget pack -Prop Configuration=Release -IncludeReferencedProjects

La opción -Prop le brinda la posibilidad de establecer la configuración que desea aplicar al crear el .nupkg. La opción -IncludeReferencedProjects incluye todas las dependencias de proyectos a las que se hace referencia en el archivo .nupkg.

Si su proyecto depende de otra biblioteca de proyecto/clase, lo incluiría en el paquete nuget creado. De lo contrario, ¿por qué publicaría un paquete roto? Si los publica por separado, nuget debería poder resolver la dependencia instalándolo desde el origen de nuget con la versión que especificó dentro del paquete B Si no puede encontrar la versión de referencia específica, entonces es un paquete roto, como mencionó Jon, debe tener cuidado de publicar su paquete en la secuencia adecuada o todos juntos. Si su nuget no puede resolverlo desde las dependencias de nuget, incluirá automáticamente el dll si existe en su solución.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda