5

環境:

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1にインストールされた Windows 2008 R2 64Bit SDK

C:\Windows\Microsoft.NET\Framework64\v4.0.30319にインストールされたフレームワーク

Nant を実行していくつかの .NET 4 クラスをコンパイルしようとすると、次のメッセージが表示されます。

The SDK for the 'net-4.0' framework is not available or not configured.:

            NAnt.Core.BuildException: The SDK for the 'net-4.0'
framework is not available or not configured.
               at NAnt.Core.Tasks.ExternalProgramBase.DetermineFilePath()
               at NAnt.Core.Tasks.ExternalProgramBase.get_ProgramFileName()
               at
NAnt.Core.Tasks.ExternalProgramBase.PrepareProcess(Process process)
               at NAnt.Core.Tasks.ExternalProgramBase.StartProcess()
               at NAnt.Core.Tasks.ExternalProgramBase.ExecuteTask()
               at NAnt.Core.Task.Execute()
               at NAnt.Core.Target.Execute()
               at NAnt.Core.Project.Execute(String targetName, Boolean
forceDependencies)
               at NAnt.Core.Project.Execute()
               at NAnt.Core.Project.Run()

NANT.exe.config を見ると、SDK の適切なパスを見つけるためにレジストリを参照しているように見えます。

<project>
 <readregistry
     property="installRoot"
      key="SOFTWARE\Microsoft\.NETFramework\InstallRoot"
      hive="LocalMachine" />
 <locatesdk property="sdkInstallRoot"
 minwinsdkver="v7.0A" minnetfxver="4.0" maxnetfxver="4.0.99999"
 failonerror="false" />
</project>

キーがレジストリに存在せず、SDK のバージョンが minwinsdkver="v7.0A" と一致しません

この問題に遭遇し、有効な回避策を見つけた人はいますか?

4

2 に答える 2

0

昨日、この問題に遭遇しました。もう 1 つの回避策は、NAnt 実行可能ファイルを 32 ビットとしてマークすることです。

  1. 開発者コマンド プロンプトを開く
  2. NAnt 実行可能ファイルを含むディレクトリに移動します。
  3. 次のコマンドを実行します: corflags NAnt.exe /32Bit+
于 2016-06-01T02:11:07.503 に答える