使用NAnt去Build專案,設定檔案中明明就有設定 webmap 的資訊,為何還會發生Cannot build web project 'http://.... 的錯誤呢?
同事在問說使用VS.NET 2003 Build大的專案要花很久的時間。
所以建議他使用 NAnt 去Build看看。
結果同事用一個簡單的Web專案去測試就發生以下的錯誤,
NAnt 0.91 (Build 0.91.4312.0; release; 2011/10/22) Copyright (C) 2001-2011 Gerry Shaw http://nant.sourceforge.net
Buildfile: file:///C:/Inetpub/wwwroot/WebProject1/WebForm.build
Target framework: Microsoft .NET Framework 2.0
Target(s) specified: build
[property] Target framework changed to "Microsoft .NET Framework 1.1".
build:
build.winforms:
[solution] Starting solution build.
BUILD FAILED
Cannot build web project 'http://localhost/WebProject1/WebProject1.vbproj'.
Please use <webmap> to map the given URL to a project-relative path,
or specify enablewebdav="true" on the <solution> task element to use WebDAV.
查看它的 WebForm.build 檔中有設定 webmap Tag了呀!
再參考以前「獨行俠」建立的專案去比較,發現在Build的方案檔中,不能使用 http://.... ,而是要使用 實體路徑 ,如下,
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "WebProject1", "http://localhost/WebProject1/WebProject1.vbproj", "{F40C640C-CE4E-4CCF-85CD-C3437DDA5FA2}"
改成=>
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "WebProject1", "R:\WebProject1\WebProject1.vbproj", "{F40C640C-CE4E-4CCF-85CD-C3437DDA5FA2}"
而原本的 WebForm.build 的內容也可以很簡單的將它設定到 方案檔 就可以了,如下,
<?xml version="1.0"?>
<project name="NantTest" default="build">
<property name="nant.settings.currentframework" value="net-1.1"/>
<target name="build">
<solution configuration="Debug" solutionfile="WebProject1.sln">
<assemblyfolders>
</assemblyfolders>
</solution>
</target>
</project>
希望對大家有所幫助,謝謝!
Hi,
亂馬客Blog已移到了 「亂馬客 : Re:從零開始的軟體開發生活」
請大家繼續支持 ^_^