Как устранить ошибки конфигурации с помощью Nant 0,91? - PullRequest
104 голосов
/ 22 декабря 2011

После загрузки Nant 0.91 я получаю довольно загадочные ошибки конфигурации, связанные с конфигурацией или безопасностью (см. Ниже).

Я пытаюсь просто обновить исполняемые файлы Nant с 0,86 до 0,91.

Как решить следующие проблемы при сборке на компьютере с Windows 7?

log4net: ОШИБКА XmlConfiguratorAttribute: Исключительная ситуация при получении ConfigurationFileLocation.Должен иметь возможность разрешать ConfigurationFileLocation, когда свойства ConfigFile и ConfigFileExtension не установлены.System.Security.SecurityException: запрос на разрешение типа «System.Security.Permissions.FileIOPermission, mscorlib, версия = 4.0.0.0, Culture = нейтральный, PublicKeyToken = b77a5c561934e089» не выполнен.в System.Security.CodeAccessSecurityEngine.Check (Требование объекта, StackCrawlMark & ​​stackMark, Boolean isPermSet) в System.Security.CodeAccessSecurityEngine.Check (код CodeAccessPermission, StackCrawlMark & ​​stackMark (Stack.ApperService.SecerSecurity) at System.SecerSecurity)Строка dir, Boolean normalize) в log4net.Util.SystemInfo.get_ConfigurationFileLocation () в log4net.Config.XmlConfiguratorAttribute.ConfigureFromFile (Assembly sourceAssembly, ILoggerRepository targetRepository)

Действие, для которого не было разрешения:произошла ошибка: System.Security.Permissions.FileIOPermission Зона сбоя сборки: Internet

Необработанное исключение: System.Security.SecurityException: сбой запроса на ConfigurationPermission при попытке доступа к разделу конфигурации «nant».Чтобы разрешить всем абонентам доступ к данным для этого раздела, установите атрибут раздела 'requirePermission' равным 'false' в файле конфигурации, где этот раздел объявлен.---> System.Security.SecurityException: Ошибка запроса разрешения типа 'System.Configuration.ConfigurationPermission, System.Configuration, Version = 4.0.0.0, Culture = нейтральный, PublicKeyToken = b03f5f7f11d50a3a'.в System.Security.CodeAccessSecurityEngine.Check (Требование объекта, StackCrawlMark & ​​stackMark, Boolean isPermSet) в System.Security.CodeAccessSecurityEngine.Check (CodeAccessPermission cap, StackCrawlMark & ​​stackMark.D.Configuration.CheckPermissionAllowed (String configKey, Boolean requirePermission, Boolean isTrustedWithoutAptca) --- Конец трассировки стека внутренней исключительной ситуации --- в System.Configuration.BaseConfigurationRecord.CheckPermissionAllowed (String configKey, Boolean requirePermission, Boolean.Строка configKey, логическое значение getLkg, логическое значение checkPermission, логическое значение getRuntimeObject, логическое значение requestIsHere, объект и результат, объект & resultRuntimeObject) в System.Configuration.BaseConfigurationRecord.GetSection (строковое configKey) в System.Configuration.Cnternal.Configuration.GetSection (String sectionName) в System.Configuration.ConfigurationManager.GetSection (String sectionName) в NAnt.Console.ConsoleStub.Framework.GetRuntimeFramework () в NAnt.Console.ConsoleStub.Main (String [] args

1014* (Ответ получен, опубликован как вопрос для справки ....)

Ответы [ 2 ]

202 голосов
/ 22 декабря 2011

Как ни странно, это связано с тем, как исполняемые файлы извлекаются из архива Nant 0.91.(Это не имело смысла для меня, пока я действительно не попробовал это, но это действительно работает ...)

Источник: http://surfjungle.blogspot.com/2011/11/tip-running-nant-091-on-windows-7.html

Я обнаружил, что проблема была в Windows 7безопасность связана с тем, что для загрузки загруженного zip-файла NAnt 0.91 требуется дополнительная настройка, связанная с безопасностью: перед извлечением необходимо щелкнуть правой кнопкой мыши zip-файл, выбрать «Свойства» и на вкладке «Общие» нажать кнопку «Разблокировать», затем нажатьОК в окне свойств.Теперь извлеките файл в нужное вам место , убедитесь, что он находится в системном пути, откройте новую командную строку и NAnt должен успешно работать.

11 голосов
/ 17 марта 2014

У меня была такая же проблема, однако на моей вкладке Свойства / Общие не было кнопки разблокировки. (Я не уверен почему; кажется, что это потенциально связано с тем, что я работаю внутри виртуальной машины VMWare Fusion.)

Эта проблема, казалось бы, исчезла, если бы я использовал что-то кроме встроенного в Windows экстрактора ZIP для извлечения файла. Например, я использовал 7-Zip для распаковки архива, и все работало нормально.

...