csprojファイルを使用しないようにするには、少なくともNAntContribのタスクを使用するか、msbuild.exeを直接使用する(たとえば、codecampserver)という2つのオプションがあるようです。私はこの権利を読んでいますか?そうであれば、msbuild.exeをNAntContribタスクよりも使用する利点は何ですか?<msbuild> NAntを指定したタスクまたはmsbuild.exe?
15
A
答えて
23
NAntContribは、.NET Framework V2.0を前提としています。 .NET 3.5を使用する場合は、MsBuild.exeを直接呼び出す必要があります。新しいバージョンの.NETにアップグレードするときは、MSBuildPathプロパティを変更するだけで済みます。ここ
の例です:.NETの異なるバージョンの
<property name="MSBuildPath" value="C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe"/>
<target name="build">
<exec program="${MSBuildPath}">
<arg line='"${SolutionFile}"' />
<arg line="/property:Configuration=${SolutionConfiguration}" />
<arg value="/target:Rebuild" />
<arg value="/verbosity:normal" />
<arg value="/nologo" />
<arg line='/logger:"C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll"'/>
</exec>
</target>
値MSBuildPath
- 2.0、3.0
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\MSBuild.exe
- 3.5
C:\Windows\Microsoft.NET\Framework64\v3.5\MSBuild.exe
- 4、4.5、4.5.1であります、4.5.2
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe
、Framework64
コメントのいくつかのフォローアップ
更新 Framework
に、value
属性は何のスペースを持っていないパラメータに使用される変更。 line
は、スペースのために区切る必要のあるパラメータに使用されます。それ以外の場合、アプリケーションはスペースを入力の最後として使用します。
2
は、ここで簡単なターゲット
<target>
<loadtasks assembly="${nant::get-base-directory()}/../../nantcontrib-0.85/bin/NAnt.Contrib.Tasks.dll" />
<msbuild project="${filepath.root}/yourproject.csproj" verbose="true">
<arg value="/p:Platform=${build.platform}" />
<arg value="/t:Rebuild" />
<arg value="/p:OutputPath=${build.dir}/bin/" />
</msbuild>
</target>
関連する問題
- 1. ILMerge 2.9.210.0のNantタスク
- 2. LispのAnt(またはNAnt)
- 3. NAntでの<mbunit>の使用が失敗しました
- 4. nunit2タスク、NAnt、Watin - ApartmentState STAエラー
- 5. ThreadPoolExecutor - 指定与えられたタスク
- 6. カスタムNAnt、Ant、またはMSBuildタスクを作成するためのベストプラクティスはありますか?
- 7. NAnt:コマンドラインで指定されたターゲット名を取得する方法
- 8. NAnt:オブジェクトのコレクションを返す/設定するタスク?
- 9. Springスケジュールされたタスク:XML設定でタイムゾーンを指定する
- 10. NAntの重複タスクをオーバーライドしますか?
- 11. アクション:指定タスクC#
- 12. MSBuild.exeがcmakeエラーを停止しました
- 13. 指定したタイムアウト後にタスクがキャンセルされない
- 14. NAntの<mail>タスクコマンドライン
- 15. タスク並列ライブラリ指定された結果を持つWaitAny
- 16. MSBuild.exeが見つかりませんでした。cmd.exe
- 17. Capistranoのタスクは、指定されたスコープ内で実行されません。
- 18. 複数のタスク<T>またはIProgress <T>を部分的に完了しましたか?
- 19. Outパラメータを指定してAction <>またはFunc <>を使用できますか?
- 20. 月または年を指定した小数点xaxis
- 21. CSS3またはjQueryのアニメーションを指定したステップ
- 22. <select>と指定されたCSSセレクタ<option>ラベル
- 23. 最大日付を選択します。<指定した日付
- 24. datetimeを指定したFileSystemWatcher?
- 25. 多目的タスクの最小ゼロ点を指定したMoodle試験
- 26. MaxInternalRetryCountReached - 指定されたタスクが最大内部リトライ回数に達しました
- 27. 定期的なタスクで指定された時間をスキップする方法
- 28. 文字列 "5pm"または "5am"を指定して、時間とAMPM指定子
- 29. Adaは限定されたプライベートタイプをタスクに渡します
- 30. NAntにワーキングディレクトリを設定するには?
うわー、おかげです。 NAntContribがそれほど遅れているとは決して想像もしませんでした。 – keithm
-1 .NET 3.5ではを使用できます。 NAntとNAntContribの最新ナイトリーを持っていることを確認してください(NAnt Nightly 20090130とNAntContrib Nightly 20090201)。 –
私はNAntの新人です。 argの意味について少し混乱しています。 arg値 msbuildを扱う場合。 誰かが私に説明することができますが、ドキュメンテーションはまだ私には分かりません。 – sheir