9

NAnt 0.86b1 を VS2008 SP1 および x64 XP で実行しようとしています。

私は基本的なビルド ファイル (以下) を持っており、エラー ソリューション形式のファイル 'Solution.sln' はサポートされていません。

<property name="nant.settings.currentframework" value="net-3.5" />

<target name="build" description="Full Rebuild" depends="clean,compile" />  

<target name="clean" description="Cleans outputs">
    <delete dir="bin" failonerror="false" />
    <delete dir="obj" failonerror="false" />
</target>

<target name="compile" description="Compiles solution">
    <solution configuration="debug" solutionfile="Solution.sln" />
</target>

他の誰かがこの問題を経験しましたか? 私はこれについて有用なものを見つけることができません。

4

3 に答える 3

8

ドキュメントには、NAnt の<solution>タスクが VS2003 より新しいソリューション ファイルをサポートしていないことが示されていることがわかります。

VS2003 より新しいすべてのプロジェクトでは、nantcontrib<msbuild>タスクを使用することをお勧めします。

また、NAnt の .85 バージョンは、2.0 までのフレームワーク バージョンのみをサポートします。3.5 フレームワークに対して物事を機能させる最も純粋な方法は、NAntの.86- beta1 バージョンを使用することです。<msbuild>その後、3.5 ソリューションに対してタスクを使用できるようになります。

于 2008-11-29T17:31:09.590 に答える
7

nant-0.86-beta1 は 3.5 をサポートしていますが、ソリューション ノードではサポートしていません。私はnantcontribからこれを使用することになりました:

  <target name="build" description="Compiles using the AutomatedDebug Configuration">
    <!-- <loadtasks assembly="C:\Dev\nant-0.86-beta1\bin\NAnt.Contrib.Tasks.dll"  /> -->
    <msbuild project="${Solution.Filename}">
      <property name="Configuration" value="Release"/>
    </msbuild>
  </target>
于 2009-01-08T23:20:57.710 に答える
2

nant と VS2008 を使用したプラットフォーム コードのビルドを参照してください。

これはスタックオーバーフローにあります。基本的に、いくつかのオプションしかなく、プロジェクト ビルド ファイル、共通ビルド ファイル、およびマスター ビルド ファイルを使用して、すべてのビルドを自分で制御します。または、Exec タスクを実行して、コンパイルするソリューションごとに正しいバージョンの MSBuild を実行します。

于 2009-02-12T22:10:20.293 に答える