Пакет NuGet «Указанный DateTimeOffset нельзя преобразовать в метку времени Zip-файла» - PullRequest
2 голосов
/ 04 апреля 2020

Когда я хочу упаковать свою библиотеку как пакет NuGet, я получаю следующую ошибку

Указанный DateTimeOffset нельзя преобразовать в метку времени Zip-файла

I Я использую следующую команду для упаковки моего проекта:

dotnet msbuild /t:pack /p:Configuration=Release /p:SourceLinkCreate=true

Ответы [ 2 ]

2 голосов
/ 06 апреля 2020

Я сделал консольное приложение для исправления неверных дат на диске (кроссплатформенный). Он устанавливает LastModificationDate на 01.01.2000. Вы можете просто запустить его без каких-либо аргументов. Он будет работать на всех ваших дисках. Также вы можете указать каталог для поиска.

Исходный код на GitHub :

Использование:

FileBulkDateChanger.exe

или

FileBulkDateChanger.exe C:\

Для MAC / Linux,

dotnet FileBulkDateChanger.dll

Запустить это инструмент и забудьте об этой проблеме:)

2 голосов
/ 04 апреля 2020

Проблема в том, некоторые файлы DLL имеют недопустимые даты для zip-файла (например, 31.12.1979). Вы можете решить эту проблему, обновив все недопустимые даты модификации DLL-файлов. Вот скрипт Powershell, который обновляет все недействительные библиотеки DLL.

gci -path "C:\" -rec -file *.dll | Where-Object {$_.LastWriteTime -lt (Get-Date).AddYears(-20)} | %  { try { $_.LastWriteTime = '01/01/2020 00:00:00' } catch {} }

Устанавливает все недействительные даты DLL на 01/01/2000. Измените параметр path для вашего компьютера. Мои репозитории GitHub находятся на моем C диске, поэтому я использую этот -path C:\.

...