0Day Forums
Build succeeds, but publish fails - Printable Version

+- 0Day Forums (https://0day.red)
+-- Forum: Coding (https://0day.red/Forum-Coding)
+--- Forum: Asp.Net (https://0day.red/Forum-Asp-Net)
+--- Thread: Build succeeds, but publish fails (/Thread-Build-succeeds-but-publish-fails)

Pages: 1 2 3


Build succeeds, but publish fails - ronaldavrbvlmra - 07-23-2023

Up until two days ago, I was able to use Visual Studio 2010's "Publish Web" option by right clicking on my project and clicking the publish button on the context menu. Now when I try to do the same thing, I get the following output:

------ Build started: Project: ELMS, Configuration: Debug Any CPU ------
Build started 8/1/2011 3:08:03 PM.
GenerateTargetFrameworkMonikerAttribute:
Skipping target "GenerateTargetFrameworkMonikerAttribute" because all output files are
up-to-date with respect to the input files.
_CopyOutOfDateSourceItemsToOutputDirectoryAlways:
Copying file from "C:\SVN\TrakNet\trunk\MTS\lib\Newtonsoft.Json.Net35.dll" to
"bin\lib\Newtonsoft.Json.Net35.dll".
CopyFilesToOutputDirectory:
LMS -> C:\SVN\TrakNet\trunk\MTS\bin\LMS.dll

Build succeeded.

Time Elapsed 00:00:00.04
------ Publish started: Project: LMS, Configuration: Debug Any CPU ------
Object reference not set to an instance of an object.
========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ==========
========== Publish: 0 succeeded, 1 failed, 0 skipped ==========

This is while attempting to publish to localhost (for debugging purposes)

Here are the settings of the publish profile that I'm using:

Publish Method: Web Deploy
Service URL: localhost
Site/application: default web site/ELMS
[x] Mark as IIS application on destination
[x] Leave extra files on destination (do not delete)

I have already attempted:

- Cleaning/rebuilding the project
- Deleting the bin folder of the project
- Running reg_iis.exe -i
- Reinstalling VS2010

but nothing I've changed has fixed the error.

Any insight into what might be causing the issue would be greatly appreciated :)

EDIT:

The problem actually resolved itself as of my last reboot. I must have rebooted 6-7 times since the problem first manifested itself, but this time no Object Reference message. Here's the log from the build/publish now:


------ Build started: Project: LMS, Configuration: Debug Any CPU ------
Build started 8/3/2011 9:10:12 AM.
GenerateTargetFrameworkMonikerAttribute:
Skipping target "GenerateTargetFrameworkMonikerAttribute" because all output files are up-to-date with respect to the input files.
_CopyOutOfDateSourceItemsToOutputDirectoryAlways:
Copying file from "C:\SVN\TrakNet\trunk\MTS\lib\Newtonsoft.Json.Net35.dll" to "bin\lib\Newtonsoft.Json.Net35.dll".
CopyFilesToOutputDirectory:
LMS -> C:\SVN\TrakNet\trunk\MTS\bin\LMS.dll

Build succeeded.

Time Elapsed 00:00:00.04
------ Publish started: Project: LMS, Configuration: Debug Any CPU ------
Gather all files from Project items @(IntermediateAssembly). Adding:
bin\LMS.dll to bin\LMS.dll
bin\LMS.pdb to bin\LMS.pdb
Gather all files from Project items @(Content). Adding:
Global.asax;lib\Newtonsoft.Json.Net35.dll;MtsSchemas\MtsSchema.xml;Web.config
Gather all files from Project output (IntermediateSatelliteAssembliesWithTargetPath).
Adding:
Gather all files from Project items
@(ReferenceCopyLocalPaths,ReferenceComWrappersToCopyLocal,ResolvedIsolatedComModules,_DeploymentLooseManifestFile,NativeReferenceFile).
Gather all files from Project items @(AllExtraReferenceFiles). Adding:
Gather all files from Project items
@(_SourceItemsToCopyToOutputDirectoryAlways,_SourceItemsToCopyToOutputDirectory). Adding:
bin\lib\Newtonsoft.Json.Net35.dll
Gather all files from Project items @(_binDeployableAssemblies). Adding:
Publish Pipeline Collect Files Phase
Found The following for Config tranformation:
Web.config
Creating directory "C:\SVN\TrakNet\trunk\MTS\obj\Debug\TransformWebConfig\transformed\".
Publish Pipeline Transform Phase
Creating directory "C:\SVN\TrakNet\trunk\MTS\obj\Debug\CSAutoParameterize\transformed\".
Copying Web.config to obj\Debug\CSAutoParameterize\original\Web.config.
Transforming Source File: C:\SVN\TrakNet\trunk\MTS\Web.config
Applying Transform File: <?xml version="1.0"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<connectionStrings>
<add
connectionString="{% token='$(ReplacableToken_#(parameter)_#(tokennumber))' xpathlocator='name' parameter='$(name)-Web.config Connection String' description='$(name) Connection String used in web.config by the application to access the database.' defaultValue='$(connectionString)' tags='SqlConnectionString' %}"
xdt:Transform="SetTokenizedAttributes(connectionString)" xdt:SupressWarnings="True" />
</connectionStrings>
</configuration>
Output File: obj\Debug\CSAutoParameterize\transformed\Web.config
Transformation succeeded
Auto ConnectionString Transformed Web.config into obj\Debug\CSAutoParameterize\transformed\Web.config.
Creating directory "obj\Debug\Package\PackageTmp".
Copying all files to temporary location below for package/publish:
obj\Debug\Package\PackageTmp.
Copying bin\LMS.dll to obj\Debug\Package\PackageTmp\bin\LMS.dll.
Copying bin\LMS.pdb to obj\Debug\Package\PackageTmp\bin\LMS.pdb.
Copying Global.asax to obj\Debug\Package\PackageTmp\Global.asax.
Copying lib\Newtonsoft.Json.Net35.dll to obj\Debug\Package\PackageTmp\lib\Newtonsoft.Json.Net35.dll.
Copying MtsSchemas\MtsSchema.xml to obj\Debug\Package\PackageTmp\MtsSchemas\MtsSchema.xml.
Copying C:\SVN\TrakNet\trunk\MTS\lib\Newtonsoft.Json.Net35.dll to obj\Debug\Package\PackageTmp\bin\lib\Newtonsoft.Json.Net35.dll.
Copying obj\Debug\CSAutoParameterize\transformed\Web.config to obj\Debug\Package\PackageTmp\Web.config.
Publish Pipeline Deploy phase Pre-Deploy CopyAllFilesToOneFolder Stage
Generate source manifest file for Web Deploy package/publish ...
Creating directory "obj\Debug\Database".
Starting Web deployment task from source:manifest(C:\SVN\TrakNet\trunk\MTS\obj\Debug\Package\LMS.SourceManifest.xml) to Destination:auto().
Updating filePath (default web site/LMS\bin\ELMS.dll).
Updating filePath (default web site/LMS\bin\ELMS.pdb).
Updating filePath (default web site/LMS\bin\lib\Newtonsoft.Json.Net35.dll).
Updating filePath (default web site/LMS\lib\Newtonsoft.Json.Net35.dll).
Updating filePath (default web site/LMS\Web.config).
Updating setAcl (default web site/LMS).
Updating setAcl (default web site/LMS).
Successfully executed Web deployment task.
Publish is successfully deployed.
========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ==========
========== Publish: 1 succeeded, 0 failed, 0 skipped ==========

Like I said: No idea what changed. I had been manually moving the DLLs into the website's virtual directory, then just for kicks I tried publishing this morning, and everything worked out fine.



RE: Build succeeds, but publish fails - ivoreswetdwrs - 07-23-2023

In my experience this can happen when files are added/removed from different branches of your source control and an imperfect merge causes the project file structure and the actual file structure to diverge.

This could be one of several options:

- A file was deleted but the project still references it. Will fail to compile, will fail to publish.
- A file was added but is not referenced by the project. May compile, depends whether the class/methods are referenced elsewhere in the project/solution. If compiles, will publish.
- A file was added, but the project merge caused it to appear more than once in the project listing. Will compile, will fail to publish.

The solution is to look at the source control logs and trying to identify the bad merge to the project file for the above issues, then fixing the project file accordingly.


RE: Build succeeds, but publish fails - bourque300 - 07-23-2023

I ran into a similar problem when I manually copied a **folder** into a project (in my case ckeditor). It built fine and ran locally with no issues. However, when publishing the folder was ignored. It turns out I had to **create** the empty folder 1st and then copy in the folder contents. Visual Studio needs to know the item was created it appears, because after that it was recognized upon publishing.


RE: Build succeeds, but publish fails - luridness385934 - 07-23-2023

I had this issue recently publishing to Azure. I ended up deleting all the files in the **bin** folder( deleted all files WITHIN visual studio solution explorer under bin folder, but leave the bin folder itself empty) , and rebuilding the project. This seemed to make visual studio happy and azure publish worked. hope this helps


RE: Build succeeds, but publish fails - georgeannelyordtbwaz - 07-23-2023

**This issue may come because of move project from one solution to another solution or moving to another source control.**

Simple way to resolve this issue:

1. Take the current project backup and remove you current project from solution.

2. Add new project to your solution and include your files from backup and rebuild your project and done.


RE: Build succeeds, but publish fails - waif - 07-23-2023

The cause of it is the transfer your project from different environment.
To solve it, delete "obj" folder from your project directory as well as from solution explorer by right click on "obj" folder.

After that build your project and publish it. It will work normally.


RE: Build succeeds, but publish fails - keanansbic - 07-23-2023

I resolved this by removing the file "packages.config" from my Project, which was flagged as missing. After that, Publish worked just fine.


RE: Build succeeds, but publish fails - Mrindecorouslymvlrtv - 07-23-2023

I had to manually copy and paste the missing files VS was asking for into the BIN folder. .pbd, .xml Sometimes they don't copy over.


RE: Build succeeds, but publish fails - countermyth230603 - 07-23-2023

This worked for me: Manually delete the obj folder, rebuild, then publish. Somehow some permission in the obj folder got stuck, and deleting/recreating the folder cleared the error.


RE: Build succeeds, but publish fails - isopoda414330 - 07-23-2023

Me also faced same issue, I just removed **yellow marked file** from **visual studio project solution** & it worked fine for me.