visual studio 2015 - ¿Cómo puedo configurar la propiedad ''copiar al directorio de salida'' en mi archivo nuspec?
visual-studio-2015 nuget (1)
Considere el siguiente archivo nuspec:
<?xml version="1.0"?>
<package >
[SOME METADATA]
<files>
<file src="bin/x64/$configuration$/GR*.filetype" target="content/" />
</files>
</package>
Lo anterior ha empaquetado con éxito los archivos de tipo de archivo que comienzan con ''GR'' y los ha agregado a mi nueva solución de referencia.
El problema es que quiero que estos archivos siempre se copien en el directorio de salida. ¿Puedo hacer esto a través de nuspec sin tener que modificar manualmente las propiedades en mi nueva solución?
¿Cómo puedo configurar la propiedad ''copiar al directorio de salida'' en mi archivo nuspec?
Martin señaló la dirección correcta, tengo la misma solicitud antes y la respuesta de kjbartel es agradable para mí. Publico la respuesta aquí con más detalles para su pregunta, espero que esto pueda ayudarlo.
Para resolver esta pregunta, puede seguir los siguientes pasos:
-
Agregue un archivo xx.targets en la carpeta de su proyecto, asegúrese de que el nombre del archivo de destino sea el mismo que el ID del paquete (TestDemo es mi ID de paquete, por lo que el nombre de .targets es TestDemo.targets).
-
Agregue el siguiente código en el archivo de objetivos:
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <ItemGroup> <None Include="$(MSBuildThisFileDirectory)GRabc.txt"> <Link>GRabc.txt</Link> <CopyToOutputDirectory>Always</CopyToOutputDirectory> </None> </ItemGroup> </Project>
Nota: La ruta de "$ (MSBuildThisFileDirectory)" debe ser una ruta relativa; si no está familiarizado con ella, puede usar la ruta absoluta.
-
En el archivo nuspec, agregue el archivo requerido al directorio Build junto con el archivo de destino.
<files> <file src="bin/x64/Debug/GR*.txt" target="Build/" /> <file src="TestDemo.targets" target="Build/" /> <file src="bin/Debug/TestDemo.dll" target="lib/462" /> </files>
-
Empaque este paquete, luego agréguelo en otro proyecto para probar, funciona bien.