0

こんにちは、Nant を実行しようとしていますが、ビルドしようとするとこのエラーが発生し続けます

'Microsoft .NET Framework 3.5' ターゲット フレームワークの初期化に失敗しました プロパティの評価に失敗しました 式:$> プロパティ 'sdkInstallRoot' が設定されていません

.Net Framework 4.0 を以前は 3.5 で実行していましたが、回避策はありますか?どうすればよいですか?

4

2 に答える 2

3

これは NAnt 構成の問題です。ターゲット フレームワーク「net-3.5」の場合、「sdkInstallRoot」プロパティが存在しないレジストリ キーから読み取られています。

詳細はサーバーとその構成によって異なる場合がありますが、一般的には、a) 適切な .NET および Windows SDK がサーバーにインストールされていること、および b) NAnt.exe.config がレジストリを適切に参照していることを確認する必要があります。

<framework>「net-3.5」という名前のセクションの構成ファイルを調べます。その要素の中に、 という別の要素があり<project>ます。プロパティinstallRootと問題のあるsdkInstallRoot. バージョン 0.86 は、Vista 以降のオペレーティング システムに適用されるレジストリ キーを使用しません。実際の SDK インストール フォルダー キーは、いくつかの名前のいずれかである可能性があります。使用regedit.exeして確認してください。

たとえば、私のマシンでは、sdkInstallRoot は次のように定義されています。

<readregistry
    property="sdkInstallRoot"
    key="SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.0A\WinSDK\InstallationFolder"
    hive="LocalMachine"
    failonerror="false" />

指定されたレジストリ キーが存在することを確認し、存在しない場合は構成ファイルを修正します。それはあなたの問題を解決するはずです!

于 2011-02-11T21:44:04.103 に答える
1

おそらく、NAnt の最新バージョンを試してみてください。現在のバージョンは 0.91-alpha2 (2010 年 8 月 17 日) です。リリース ノートに記載されているように、0.91-alpha1 (2010 年 5 月 29 日) で .NET 4.0 のサポートが追加されました。アルファ ステータスについて心配する必要はありません。このバージョンを本番環境で問題なく使用しています。

于 2011-02-11T20:15:41.460 に答える