2011-11-14 20 views
22

Cuando se utiliza Visual Studio 2008, cuando "Publicar sitio Web", la aplicación se construye correctamente, pero luego me sale un mensaje "no publicar":'Falló la publicación' pero la compilación tuvo éxito?

enter image description here

Qué razones posibles están ahí para esto, y ¿cómo puedo prevenirlo?

+1

Un poco más de información ayudará ... – Yacov

+0

@yytg - ¿Qué tipo de información requiere? No me dan ningún tipo de advertencia. La compilación es exitosa, ¿por qué la publicación falla? – Curt

+2

@curt: el registro de la ventana de salida puede dar más información requerida. Además, consulte este [enlace] (http://bytes.com/topic/asp-net/answers/595252-publish-failed) – NaveenBhat

Respuesta

15

Puede probar esto:

  1. Realizar la compilación previa en contra de la aplicación web.

  2. Borrar el directorio de destino (directorio virtual en IIS o carpeta de archivos físicos ) y desplegar todos los archivos (de la aplicación web) en el directorio de destino .

En la ventana de salida se puede comprobar en qué fase del sitio web no operaciones de mecanismos publicar. Por ejemplo, en la primera etapa, si hay algún error que solo ocurrirá en la precompilación, eso causará que la etapa 1 falle. O algunas veces si el directorio de destino tiene algo configurado incorrectamente. Como el directorio virtual de IIS no está configurado en la versión correcta de ASP.NET o , algunos archivos antiguos están bloqueados y evitan que se borren. Sobre todo, fallidos publicar será causado por un problema de configuración de IIS lado como ajuste de autenticación ....

Source link

puede abrir la ventana de salida pulsando Ctl + w, o.

6

A veces es porque necesita ejecutar VS como administrador para poder escribir en el directorio de destino.

comprobar los mensajes de salida, deben ayudar a resolver el problema

1

Compruebe Directorio del proyecto bin. debe haber una DLL de su página o control. que debe ser recreado durante la publicación. Así que excluirlo o eliminarlo

+1

Proporcione más aclaraciones sobre por qué esto causaría el mensaje de error dado. – scoota269

0

En mi caso, estaba publicando en un directorio en una unidad de red mapeada, pero el Output panel/ventana indicaba que la ubicación no existía. La ruta era correcta y la unidad era completamente accesible. El problema se resuelve solo cuando restablezco la ruta para publicar en Visual Studio utilizando el botón ....

3

Tuve que copiar el proyecto a C:\a\ y luego publicar. Sospecho que hay problemas con el camino largo. Extraño, pero funcionó para mí.

+0

Todavía estoy recibiendo esto en Windows 10 ... El mensaje apareció una vez en la ventana "Actividad de publicación web". Algo sobre la ruta del archivo de más de 260 caracteres, que coincide con https://msdn.microsoft.com/en-us/library/windows/desktop/aa365247(v=vs.85).aspx#maxpath. Pero he intentado publicar varias veces desde entonces, y el mensaje no ha vuelto. – Stephen

1

Me encontré con este mismo problema hoy y fue debido al archivo Thumbs.db que se creó cuando abrí la carpeta de imágenes para buscar una imagen. Eliminé el archivo y el proyecto se implementó correctamente. Espero que esto ayude a alguien más en la misma situación.

+0

Eliminé una imagen de la carpeta sln pero se mostró en VS. Borro una imagen de VS y publico succssed. –

1

Asegúrese de vaciar la carpeta de destino (manualmente) antes de publicarla.Algunas veces no se puede eliminar un archivo que dará como resultado una publicación fallida

7

Tuve el mismo problema. Pesadilla para identificar el problema, porque los registros y las salidas no muestran errores ni fallas. Simplemente obtengo "Build: 39 succeeded" y "Publish: 1 failed".

Resolví el problema eliminando sistemáticamente todos los paquetes NuGet de a uno por vez (y eliminando el código que lo hace referencia) hasta que identifiqué el ofensivo.

¡Esto toma mucho tiempo! Sin embargo, la respuesta para mí fue Microsoft.Net.Compilers.

No tengo idea de cómo terminé con eso en mi proyecto, pero tan pronto como eliminé ese paquete, todo vuelve a estar bien.

+4

Ese fue mi problema también, gracias. Primero tuve que eliminar _CodeDom.Providers.DotNetCompilerPlatform_, ya que depende de _Net.Compilers_. – Mackan

+1

Ídem: https://stackoverflow.com/a/48104124/826308 –

Cuestiones relacionadas