2016-03-12 2 views
0

Я пытаюсь создать существующее решение ASP.NET на Mono с помощью xbuild, и среди ошибок, которые я получаю, это первый (обрезанный и отформатированный подходят):

MyProj/OrderQueueJob/OrderQueueJob.csproj: error : 
MyProj/OrderQueueJob/OrderQueueJob.csproj: 
../packages/Microsoft.Web.WebJobs.Publish.1.0.2/tools/webjobs.targets: 
    Project file could not be imported, it was being imported by 
     MyProj/OrderQueueJob/OrderQueueJob.csproj: 
     MyProj/packages/Microsoft.Web.WebJobs.Publish.1.0.2/tools//webjobs.console.targets: 
     Project file could not be imported, it was being imported by 
      MyProj/packages/Microsoft.Web.WebJobs.Publish.1.0.2/tools/webjobs.targets: 
      MyProj/packages/Microsoft.Web.WebJobs.Publish.1.0.2/tools/webjobs.console.targets 
      could not import "$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" 

Я относительно неведения относительно того, что идет в строительство .NET проектов, но представляется очевидным, что VSToolsPath, кажется, не установлено, так что файлы ссылки (цели) не могут быть найдены?. Когда я работал с поисковой системой, я столкнулся только с более старыми ответами, в которых говорилось, что в некоторых (теперь старых) версиях Mono вам нужно было скопировать эту папку из одного места в другое - что казалось простым пропуском. Странно то, что у меня, похоже, есть эта папка в файловой системе, но она не может быть найдена!

$ find /usr/local/Cellar/mono -iregex '.*VisualStudio.*Microsoft.WebApplication.targets' 
/usr/local/Cellar/mono/4.2.2.30/lib/mono/xbuild/Microsoft/VisualStudio/v10.0/WebApplications/Microsoft.WebApplication.targets 
/usr/local/Cellar/mono/4.2.2.30/lib/mono/xbuild/Microsoft/VisualStudio/v11.0/WebApplications/Microsoft.WebApplication.targets 
/usr/local/Cellar/mono/4.2.2.30/lib/mono/xbuild/Microsoft/VisualStudio/v9.0/WebApplications/Microsoft.WebApplication.targets 

Что дает?


Очевидно «MYPROJ» выше, является урезана версией длинного пути файла, такого как /Users/John.Smith/projects/MyProj/.

ответ

1

Оказалось, у меня есть одна папка за version в Visual Studio

ls /usr/local/Cellar/mono/4.2.2.30/lib/mono/xbuild/Microsoft/VisualStudio/ 
v  v10.0 v11.0 v12.0 v14.0 v9.0 

Как видно из вывода в моем вопросе, только некоторые из них на самом деле есть инструменты VS. Странно Xamarin забыть VS2012 и VS2015, но о, хорошо.

Проблема ушла, когда я скопировал новейшую существующую версию папки в тех отсутствует его:

MONO_VS_DIR=/usr/local/Cellar/mono/4.2.2.30/lib/mono/xbuild/Microsoft/VisualStudio 
cp -r $MONO_VS_DIR/v11.0/WebApplications $MONO_VS_DIR/v12.0/ 
cp -r $MONO_VS_DIR/v11.0/WebApplications $MONO_VS_DIR/v14.0/ 
Смежные вопросы