проблема с контролем источника при попытке загрузить из источника управления [duplicate]

Вы можете перепрыгнуть через обручи и преобразовать свое решение в вызов lapply, sapply или apply. (Я вижу, что @jonw показывает один способ сделать это.) Кроме того, что у вас уже есть вполне приемлемый код.

Если это все временные ряды или аналогичные, то подходящей альтернативой может быть следующее: который отображает каждую серию в своей собственной панели на одном участке графика. Мы используем пакет zoo, поскольку он отлично обрабатывает упорядоченные данные.

require(zoo)
set.seed(1)
## example data
dat <- data.frame(X = cumsum(rnorm(100)), Y = cumsum(rnorm(100)),
                  Z = cumsum(rnorm(100)))
## convert to multivariate zoo object
datz <- zoo(dat)
## plot it
plot(datz)

Что дает: Example of zoo plotting capabilities [/g0]

202
задан Ques Tion 27 August 2015 в 16:05
поделиться

25 ответов

Сегодня у меня была такая же ошибка (отсутствует точно такой же пакет). Я также создал проект MVC + Web API.

Это произошло потому, что я переместил файлы приложений (включая файл .csproj) в другое место. Я вручную обновил файл .sln, но теперь все зависимости пакетов (Visual Studio 2015) хранятся в файле .csproj.

Редактирование файла .csproj и исправление относительного пути к папке решения (которая содержит папку пакетов) решила проблему для меня.

199
ответ дан Tiberiu Craciun 3 September 2018 в 15:26
поделиться

Комментировать параметр компилятора в WebConfig:

<!--<system.codedom>
<compilers>
  <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:6 /nowarn:1659;1699;1701" />
  <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:14 /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+" />
</compilers>
</system.codedom>-->

Обновить последнюю версию пакетов в файле конфигурации пакета

  <package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="1.0.4" targetFramework="net452" />

Восстановить, если все нормально, нет необходимости продолжать, иначе щелкните правой кнопкой мыши проект, нажмите «выгрузить проект». Щелкните правой кнопкой мыши проект и отредактируйте файл .csproj

. Проверьте путь Codedom, у него не было net45 в предыдущих путях, добавьте это вручную, сохраните, загрузите, перестройте. Он должен работать.

<Import Project="..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.4\build\net45\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props" Condition="Exists('..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.4\build\net45\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" />
0
ответ дан Anurag Sharma 3 September 2018 в 15:26
поделиться

Чтобы развернуть несколько ответов, да, вы можете удалить следующий файл из файла .csproj:

<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">

, и это устраняет проблему, однако в моем случае я заметил, что у меня были дополнительные ссылки на .NET.Compilers и .CodeDom.Providers с разными версиями:

<Error Condition="!Exists('..\packages\Microsoft.Net.Compilers.1.0.0
<Error Condition="!Exists('..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\

<Error Condition="!Exists('..\packages\Microsoft.Net.Compilers.2.0.1
<Error Condition="!Exists('..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.3\

Когда мой файл package.config ссылался только на следующее:

<package id="Microsoft.Net.Compilers" version="2.0.1"
<package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="1.0.3"

Удаление элементов 1.0.0 из файла .csproj устраняет проблему.

3
ответ дан Brian Vander Plaats 3 September 2018 в 15:26
поделиться

Для меня мой файл gitignore игнорировал мою папку с папками. Следующая строка gitignore вызывала проблему -

**/packages/*

Удалена и она восстановила папку моих пакетов. Надеюсь, это помогает кому-то другому.

0
ответ дан bsod_ 3 September 2018 в 15:26
поделиться

Не уверен, что это поможет кому-либо, но у меня возникла эта проблема, когда я удалил исходный код с моей локальной машины, не сохранив файл решения в TFS. (Во время начальной разработки я щелкнул правой кнопкой мыши и проверил проект в обозревателе решений, но забыл когда-либо проверять само решение.) Когда мне нужно было работать над этим снова, все, что у меня было в TFS, было .csproj-файл, no .sln file. Поэтому в VS я сделал File -> Source Control -> Advanced - Open from Server и открыл файл .csproj. Оттуда я сделал «Сохранить все», и он спросил, где я хочу сохранить файл .sln. Я сохранил этот .sln-файл в каталоге проекта с другими папками (App_Data, App_Start и т. Д.), А не с каталогом верхнего уровня. Я, наконец, понял, что мне нужно сохранить файл .sln в каталог из папки проекта, чтобы он находился на том же уровне, что и папка проекта. Все мои пути решены, и я смог построить его снова.

0
ответ дан chersull_99 3 September 2018 в 15:26
поделиться

Для меня пакеты были там по правильному пути, но папки сборки внутри папки пакета не были. Я просто удалил все пакеты, которые, по его словам, отсутствовали, и перестроил решение, и он успешно создал папки сборки и файлы .props. Таким образом, сообщения об ошибках были правильными, сообщив мне, что что-то было пропущено.

0
ответ дан Ian Hale 3 September 2018 в 15:26
поделиться

Сочетание двух ответов сработало для меня. Сначала я модифицировал файл .csproj, чтобы удалить ссылку на версию 1.0.0

< Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild" >

  ----Error---

< /Target>

, а затем сделал

Update-Package -Reinstall

из файла и работал.

8
ответ дан innoSPG 3 September 2018 в 15:26
поделиться

Для меня проблема заключалась в том, что когда я скопировал решение в новую папку и открыл его, в нем отсутствовала папка Nuget, как показано ниже. Я скопировал эту папку, и все сработало. Примечание. Эта же папка была в нашем исходном элементе управления, но не в этом проекте решений, это был один каталог.

3
ответ дан John Peters 3 September 2018 в 15:26
поделиться

Для разработчиков DevOps / build вы, вероятно, можете исправить этот запуск nuget restore в отношении затронутого SLN или проекта, если вам не хватает SLN. Я должен сделать это для наших сборников CI / CD для всех наших проектов UWP.

  1. Убедитесь, что nuget установлен на ведомом сборки либо в Visual Studio, либо в автономном режиме. Если это последний, убедитесь, что он находится в PATH и пропустите шаг 2.
  2. Либо откройте консоль VS Dev CMD, либо загрузите ее через уже открытую, что вы можете сделать с помощью приведенных ниже инструкций: VS2015 call "%VS140COMNTOOLS%VsDevCmd.bat" или VS2017 call "%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Enterprise\Common7\Tools\VsDevCmd.bat"
  3. call nuget restore MyStuff.SLN или call nuget restore MyStuff.csproj, если нет SLN.
0
ответ дан kayleeFrye_onDeck 3 September 2018 в 15:26
поделиться

Для всех, кто спотыкается здесь с проблемой, которую я имел (некоторые, но не все пакеты восстанавливаются на сервере сборки), последний фрагмент головоломки для меня заключался в добавлении NuGet.config в корень моего решения, .SLN-файл, как Дэвид Эббо, объяснил здесь: http://blog.davidebbo.com/2014/01/the-right-way-to-restore-nuget-packages.html .

Из сообщения блога Ebbo, содержимое файла для меня просто

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="nuget.org" value="https://www.nuget.org/api/v2/" />
  </packageSources>
</configuration>

UPDATE:

URL-адрес API NuGet изменен для v3 (текущий по состоянию на сентябрь 2016 года) , Из https://www.nuget.org/

<add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
2
ответ дан madannes 3 September 2018 в 15:26
поделиться

Я использую VS2012 и сталкиваюсь с той же ошибкой. Я удалил следующий тег Target из файла .csproj и начал компилировать без каких-либо ошибок.

<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
  -- Error messages within Target Tag
</Target>
5
ответ дан MAK 3 September 2018 в 15:26
поделиться

Я решил эту проблему, удалив следующий код из файла .csproj

<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
  <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\..\..\Assemblies\NuGet\SpecFlow.Plus.Excel.1.4.2\build\SpecFlow.Plus.Excel.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\Assemblies\NuGet\SpecFlow.Plus.Excel.1.4.2\build\SpecFlow.Plus.Excel.targets'))" />

10
ответ дан Mohsin Awan 3 September 2018 в 15:26
поделиться

У меня была эта проблема как неудачная сборка в Azure, когда она была развернута из Git.

Оказывается, мой .gitignore исключает папку build из ..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.0\build\net46\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props.

После того, как папка build была (сила) передана Git, проблема была решена.

0
ответ дан Neil Thompson 3 September 2018 в 15:26
поделиться

Я не мог найти никаких решений для этого, поэтому я добавил копию файла nuget.exe и powershell в корневую директорию решения с именем prebuild.ps1 со следующим контентом.

$nugetexe = 'nuget.exe'
$args = 'restore SOLUTION_NAME_HERE.sln'
Start-Process $nugetexe -ArgumentList $args

Я назвал этот сценарий powershell в моей сборке в пути к сценарию Pre-Build

0
ответ дан Nick Rubino 3 September 2018 в 15:26
поделиться

Просто включите восстановление пакета NuGet. Щелкните правой кнопкой мыши свое решение> выберите «Включить восстановление пакета NuGet».

Это создаст папку .nuget с файлом NuGet.Config и устранит проблему .

7
ответ дан Nicow 3 September 2018 в 15:26
поделиться

Решение, которое работает в моем случае - Visual Studio 2015 Enterprise, проект .NET 4.6.1

  1. Обновление до обновления 3
  2. Установка инструментов веб-разработчика

1
ответ дан Norbert Rozmus 3 September 2018 в 15:26
поделиться

Вы также можете использовать предлагаемое сообщение об ошибке как подсказку. Вот как это сделать, найдите «Управление пакетами для решения» и нажмите «Удалить пакет nuget».

Это он

0
ответ дан Parama Dharmika 3 September 2018 в 15:26
поделиться

Сообщение об ошибке полностью корректно. Я пробовал все трюки, и никто не работал. Проект (простой тест MVC Web App) перенесен из Windows 8.1 VS 2015 Community в новый тестовый ящик в Windows 10. Были применены все последние обновления VS 2015. Я даже не мог установить более новую версию пакета компиляторов.

Loop:
<LOOP>This seems to be a Ground Hog Day phenomena.</LOOP>
GoTo Loop

Я, наконец, просто скопировал Microsoft.Net.Compilers.1.0.0 из старого проекта в новый, и он сработал. Затем я мог бы начать обновлять другие пакеты до более новой версии. Похоже на ошибку процесса обновления проекта nuget.

ПРИМЕЧАНИЕ. Исходный проект был создан в VS 2015 и не имеет никаких устаревших методологий nuget.

1
ответ дан Peter Ennis 3 September 2018 в 15:26
поделиться

Проблема для меня заключалась в том, что NuGet не смог автоматически получить / обновить пакеты, потому что полный путь к файлу будет слишком большим. Исправлено перемещением моего решения в папку в моих Документах вместо глубоко вложенной папки.

Затем можно щелкнуть правой кнопкой мыши по решению и выбрать «Восстановить пакеты NuGet» (что, вероятно, не обязательно, если вы просто создаете это и пусть это сделает это для вас), а затем выберите «Управление пакетами NuGet для решения», чтобы все пакеты были обновлены до последней версии.

Это было сделано для решения примера приложения ASP MVC, загруженного с веб-сайта Microsoft.

0
ответ дан pkr298 3 September 2018 в 15:26
поделиться

Если у вас есть еще один недостающий пакет nuget, который дает вашу ошибку при создании вашего решения, используйте следующую команду, используя командную консоль Nuget из меню «Инструменты»> «Диспетчер пакетов Nuget»> «Диспетчер пакетов». Он переустанавливает ваши текущие пакеты.

Update-Package -reinstall

BEWARE - это пакеты обновлений для всего решения, а не только проекта.

31
ответ дан Richard Moore 3 September 2018 в 15:26
поделиться

Я имел это точное расстраивает сообщение. Что в конечном итоге сработало для меня, это удаление всех файлов и папок внутри / пакетов и разрешение VS повторно извлечь все следующую сборку.

13
ответ дан Ryan Russon 3 September 2018 в 15:26
поделиться

Как многие предлагали удалить тэг <Target>, могут сделать его компилируемым. Тем не менее, остерегайтесь того, что это имеет побочный эффект, когда вы делаете это для тестовых проектов.

Во время компиляции я получил ошибку, связанную с пакетом nget MSTest.TestAdapter nuget. Устранена эта проблема, удалив тэг <Target>. Несмотря на то, что он сделал успешную сборку, методы тестирования стали недоступными для поиска. Тест-проводник не будет перечислять методы тестирования в этом проекте, а тест проб или отладки не будет работать.

Я столкнулся с этим при использовании Visual Studio 2017 и .Net framework 4.7, это может произойти в других версиях

0
ответ дан Saravanan 3 September 2018 в 15:26
поделиться

Тибериу прав. Мне пришлось отредактировать файл .csproj, когда файлы были перемещены и вызвали эту проблему.

 <Import Project="..\..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.1\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props" Condition="Exists('..\..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.1\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" />

Я изменил верхнюю часть файла и внизу

<Error Condition="!Exists('..\..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props'))" />
<Error Condition="!Exists('..\..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.1\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.1\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props'))" />
11
ответ дан Tom Stickel 3 September 2018 в 15:26
поделиться

Мина работала, когда я скопировал папку с папкой решения и папку проекта. Я просто не копировал папку с предыдущего места.

0
ответ дан user1429899 3 September 2018 в 15:26
поделиться

Я решил проблему, удалив этот код из файла .csproj:

<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
  <PropertyGroup>
    <ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
  </PropertyGroup>
  <Error Condition="!Exists('$(SolutionDir)\.nuget\NuGet.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\.nuget\NuGet.targets'))" />
</Target>
261
ответ дан Vadim Kotov 3 September 2018 в 15:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: