【问题标题】:Nant refusing to use .Net 3.5Nant 拒绝使用 .Net 3.5
【发布时间】:2011-03-31 02:28:41
【问题描述】:

我正在尝试将 nant 0.90 与 Visual Studio 2008、.net 3.5 项目一起使用。团队城市正在调用 nant 脚本。这里没什么太复杂的。

<?xml version="1.0"?>
<project name="IPSA System" default="build" basedir=".">
  <property name="nant.settings.currentframework" value="net-3.5"/>
  <msbuild project="FS.IPSA.WebAdmin\FS.IPSA.WebAdmin.csproj">
    <arg value="/property:TeamOutPath=Release\FS.IPSA.WebAdmin" />
    <property name="TeamOutPath" value="Release\FS.IPSA.WebAdmin" />
  </msbuild>
</project>

我遇到的问题是 nant 坚持调用 .net 2.0 编译器而不是 3.5。我认为将nant.settings.currentframework 值放入脚本应该强制框架版本。情况似乎并非如此。还有什么可能导致问题?

【问题讨论】:

    标签: visual-studio-2008 .net-3.5 continuous-integration nant


    【解决方案1】:

    可能 msbuild 任务无法构建 vs.net 2008 解决方案(例如调用了错误版本的 msbuild.exe)。

    使用这样的东西怎么样:

        <!-- msbuild from .net 2.0 is unable to build vs.net 2008 solutions. Let's try to find .net 3.5 version of msbuild -->      
        <property name ="msbuild.exe" value="msbuild"/> <!-- default-->
        <property name="windows.dir" value="${environment::get-variable('windir')}"/>
        <property name="net3.5.dir" value="${windows.dir}/Microsoft.NET/Framework/v3.5"/>
        <if test="${directory::exists(net3.5.dir)}">
            <property name="msbuild.exe" value="${net3.5.dir}/msbuild.exe"/>
        </if>
    
        <!-- current nant msbuild task is unable to build VS.NET 2008 solutions -->
        <!-- let's try run correct msbuild.exe via the exec task -->
        <exec program ="${msbuild.exe}" verbose="true">
            <arg value="/property:TeamOutPath=Release\FS.IPSA.WebAdmin" />
            <arg value="FS.IPSA.WebAdmin\FS.IPSA.WebAdmin.csproj"/>
        </exec>
    

    【讨论】:

      【解决方案2】:

      最后发现 nant 并没有解决问题,它调用了正确版本的 msbuild,但 msbuild 调用了错误版本的 csc.exe。我还没有找到它为什么这样做,但它看起来像是 msbuild,而不是 nant。

      【讨论】:

        猜你喜欢
        • 2010-10-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-05
        • 2010-10-01
        • 2020-05-20
        • 1970-01-01
        • 2016-08-21
        相关资源
        最近更新 更多