2011-12-05 3 views
5

appharbor에서 실버 라이트 프로젝트를 빌드하는 데 문제가 있습니다 (일부 DLL이 누락 됨). 나는 다음과 같은 한 오류 전에 :appharbor에서 실버 라이트 앱을 만들 수 없습니다.

"Import Project="$(MSBuildExtensionsPath)\Microsoft\Expression\Blend\Silverlight\v4.0\Microsoft.Expression.Blend.Silverlight.targets"" 

그리고 지금은 건설 중 새로운 오류를 수신 : 나는 csproj 파일에 한 줄을 언급하는 이유

"error MSB4019: The imported project "C:\Program Files\MSBuild\Microsoft\Expression\Blend\Silverlight\v4.0\Microsoft.Expression.Blend.Silverlight.targets" was not found". 

이잖아. 여기에 스택 추적을 살펴볼 수 있습니다 : http://pastebin.com/bKYkDzRa 아무도 내가 이것을 고칠 수있는 방법을 알고 있습니까?

감사합니다, 야로슬라프

답변

4

필요한 dll을 Lib 폴더에 추가하고 lib 폴더를 AppHarbor 사이트에 게시해야합니다. 같은 문제를 해결

Have a look at this example 단계 24 :

  • 은 Visual Studio에서, 리브라는 DemoApp.Web 프로젝트에 폴더를 만듭니다. 이 폴더에는 웹 응용 프로그램이 종속되어 있고 .NET Framework의 일부가 아닌 모든 어셈블리가 포함됩니다. 이 파일을이 폴더에 넣고 "출력으로 복사"로 표시하면 어셈블리가 배포되어 AppHarbor에서 사용할 수 있습니다. 어셈블리를이 폴더에 추가하지 않으면 버전 제어에있는 파일의 일부가 아니며 BitBucket 및 AppHarbor에 업로드되지 않습니다.

  • 해먹이있는 zip에서 Lib 폴더로 DLL을 복사합니다.

  • 솔루션이 포함 된 폴더에서 명령 프롬프트를 엽니 다. 다음 명령을 실행하십시오. subst S : DemoApp.Web \ Lib 그러면 Lib 폴더가 가상 S : 드라이브에 매핑됩니다. 이렇게하는 이유는 Visual Studio 프로젝트에 dll의 절대 경로가 포함되어 있고 소스가 여러 컴퓨터에 다운로드 될 때 이러한 경로가 달라지기 때문입니다. subst는 그것을 고칠 것이다. 심지어 나를 위해 이것을 수행하고 솔루션 폴더에 넣어 작은 배치 파일을 만들었습니다.

  • Visual Studio에서 Lib 폴더를 마우스 오른쪽 단추로 클릭하고 추가 | 기존 항목을 해먹과 JSON dll을 프로젝트에 추가합니다. 둘 다 "출력으로 복사"로 표시했는지 확인하십시오. DemoApp.Web 프로젝트를 마우스 오른쪽 단추로 클릭하고 "참조 추가"를 선택하십시오. 찾아보기를 클릭하고 S : 드라이브를 탐색하고 dll을 모두 추가하십시오.

+0

은 흠 내가 프로젝트에 LibFolder에 파일 및 업데이트 참조를 추가하지만 그들은 여전히 ​​설치된 DLL을 (C에 참조 : \의 Program Files (x86) \ 참조 어셈블리 \ 마이크로 소프트 \ 프레임 워크 \ 실버 \ 4.0의 \의 System.Windows 예를 들어 .Browser.dll). –

+1

참조를 제거하고 Lib 폴더에서 로컬로 복사 한 dll을 가리켜 참조를 다시 추가해야합니다. 가장 좋은 결과를 얻으려면 가상 드라이브를 만드십시오. S :'subst'를 사용하여 Lib 폴더를 가리키고'S : \ my.dll '을 참조하십시오. 이렇게하면 S 드라이브를 올바르게 설정하면 원하는 위치로 프로젝트를 이동할 수 있습니다 . –

+0

예, Lib 폴더에서 제거하고 추가했지만 프로그램 파일을 계속 가리 킵니다. 이상 하네. –

3

당신이 위의 표현 혼합 SDK 빌드 서버에 설치되지 않기 때문입니다 한 오류입니다. 설치되지 않았으므로 MSBuild에서 Blend 빌드 대상을 찾을 수 없습니다. AppHarbor이 지원하거나 지원할 계획인지 확실하지 않지만이 SDK를 설치할 수 있는지 문의하기를 권합니다.

관련 문제