2016-06-04 2 views
0

특정 목표와 nuspec 파일을 생성 주위에 매우 혼란나는 다음과 같은 구조의 nuspec 파일이

<?xml version="1.0" encoding="utf-8"?> 
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd"> 
    <metadata> 
    <id>XLabs.Forms</id> 
    <version>2.2.0-pre05</version> 
    <title>XLabs - Forms</title> 
    <authors>XLabs Team</authors> 
    <owners>XLabs Team</owners> 
    <licenseUrl>https://github.com/XLabs/Xamarin-Forms-Labs/blob/master/LICENSE</licenseUrl> 
    <projectUrl>https://github.com/XLabs/Xamarin-Forms-Labs</projectUrl> 
    <iconUrl>https://raw.githubusercontent.com/XLabs/Xamarin-Forms-Labs/master/Design/Icons/nuget/icon_nuget.png</iconUrl> 
    <requireLicenseAcceptance>false</requireLicenseAcceptance> 
    <description>This package contains the cross-platform XLabs Forms framework and controls.</description> 
    <summary>XLabs is a open source project that aims to provide a powerfull and cross platform set of controls tailored to work with Xamarin Forms.</summary> 
    <releaseNotes>Updated for Xamarin Forms 2.2</releaseNotes> 
    <copyright>Copyright © 2016 XLabs Team</copyright> 
    <tags>Xamarin XLabs Forms Controls GridView ListView</tags> 
    <dependencies> 
     <group> 
     <dependency id="XLabs.Platform" version="[2.2.0-pre05]" /> 
     <dependency id="Xamarin.Forms" version="2.2.0.31" /> 
     </group> 
    </dependencies> 
    </metadata> 
    <files> 
    <!-- Assemblies: Android --> 
    <file src="..\..\source\Forms\XLabs.Forms\bin\$configuration$\XLabs.Forms.dll" target="lib\monoandroid" /> 
    <file src="..\..\source\Forms\XLabs.Forms\bin\$configuration$\XLabs.Forms.pdb" target="lib\monoandroid" /> 
    <file src="..\..\source\Forms\XLabs.Forms.Droid\bin\$configuration$\XLabs.Forms.Droid.dll" target="lib\monoandroid" /> 
    <file src="..\..\source\Forms\XLabs.Forms.Droid\bin\$configuration$\XLabs.Forms.Droid.pdb" target="lib\monoandroid" /> 
    <!-- Assemblies: iOS --> 
    <file src="..\..\source\Forms\XLabs.Forms\bin\$configuration$\XLabs.Forms.dll" target="lib\Xamarin.iOS10" /> 
    <file src="..\..\source\Forms\XLabs.Forms\bin\$configuration$\XLabs.Forms.pdb" target="lib\Xamarin.iOS10" /> 
    <file src="..\..\source\Forms\XLabs.Forms.iOS\bin\$configuration$\XLabs.Forms.iOS.pdb" target="lib\Xamarin.iOS10" /> 
    <file src="..\..\source\Forms\XLabs.Forms.iOS\bin\$configuration$\XLabs.Forms.iOS.dll" target="lib\Xamarin.iOS10" /> 
    </files> 
</package> 

그것은 나에게이 nuspec 생성됩니다 약간 미친 :)을 nupkg 파일을 운전해야 만 Xamarin iOS 또는 기본 Xamarin Android 프로젝트에 바로 설치 하시겠습니까? 사실이 아니더라도 모든 유형의 프로젝트 (PCL, Windows 10, Windows 8 등)에 설치됩니다. 필자는 필요한 대상에만 설치할 수 있도록 패키지를 제한하기 위해 무엇을해야할지 확신하지 못하는 시점에 있습니다.

내가 잘못하고있는 것을 누구든지 볼 수 있습니까?

업데이트 : 다음은 아직 작동하지 않는 nuspec 파일의 최신 버전입니다. 그것은 단지 안드로이드 기지 어셈블리

<?xml version="1.0" encoding="utf-8"?> 
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd"> 
    <metadata> 
    <id>XLabs.Forms</id> 
    <version>2.2.0-pre05</version> 
    <title>XLabs - Forms</title> 
    <authors>XLabs Team</authors> 
    <owners>XLabs Team</owners> 
    <licenseUrl>https://github.com/XLabs/Xamarin-Forms-Labs/blob/master/LICENSE</licenseUrl> 
    <projectUrl>https://github.com/XLabs/Xamarin-Forms-Labs</projectUrl> 
    <iconUrl>https://raw.githubusercontent.com/XLabs/Xamarin-Forms-Labs/master/Design/Icons/nuget/icon_nuget.png</iconUrl> 
    <requireLicenseAcceptance>false</requireLicenseAcceptance> 
    <description>This package contains the cross-platform XLabs Forms framework and controls.</description> 
    <summary>XLabs is a open source project that aims to provide a powerfull and cross platform set of controls tailored to work with Xamarin Forms.</summary> 
    <releaseNotes>Updated for Xamarin Forms 2.2</releaseNotes> 
    <copyright>Copyright © 2016 XLabs Team</copyright> 
    <tags>Xamarin XLabs Forms Controls GridView ListView</tags> 
    <dependencies> 
     <group targetFramework="monoandroid"> 
     <dependency id="XLabs.Core" version="[2.2.0-pre05]" /> 
     <dependency id="XLabs.IoC" version="[2.2.0-pre05]" /> 
     <dependency id="XLabs.Platform" version="[2.2.0-pre05]" /> 
     <dependency id="XLabs.Serialization" version="[2.2.0-pre05]" /> 
     <dependency id="Xamarin.Forms" version="2.2.0.31" /> 
     </group> 
    </dependencies> 
    </metadata> 
    <files> 
    <!-- Content Files --> 
    <file src="..\..\docs\XLabs.Forms.Readme.md" target="content\XLabs.Forms.Readme.md" /> 
    <!-- Assemblies: Android --> 
    <file src="..\..\source\Forms\XLabs.Forms\bin\$configuration$\XLabs.Forms.dll" target="lib\monoandroid" /> 
    <file src="..\..\source\Forms\XLabs.Forms\bin\$configuration$\XLabs.Forms.pdb" target="lib\monoandroid" /> 
    <file src="..\..\source\Forms\XLabs.Forms.Droid\bin\$configuration$\XLabs.Forms.Droid.dll" target="lib\monoandroid" /> 
    <file src="..\..\source\Forms\XLabs.Forms.Droid\bin\$configuration$\XLabs.Forms.Droid.pdb" target="lib\monoandroid" /> 
    </files> 
</package> 
+0

나는이 문제를 발견했을 수도 있고 버그 일 수도있다. readme.md 파일에 만족할만한 파일 인 것 같습니다.이 파일이 제거되면 모든 것이 예상대로 작동하기 시작한 것입니다. – Shawn

답변

0

난 당신이 대상이없는 그룹 종속성이 있기 때문에 판단이 포함되어 있더라도 다음은 윈도우 8, 윈도우 모바일 설치 패키지 및 PCL 프로젝트를 생성합니다 뼈대. 그룹 의존성으로 인해 NuGet은 Xamarin.Forms 및 XLabs.Platform NuGet 패키지를 설치하지만, iOS 또는 Android 프로젝트에 설치하지 않는 한 lib 디렉토리의 어셈블리는 사용되지 않습니다.

iOS 및 Android 용 대상 프레임 워크를 추가하려고합니다.

<group targetFramework="Xamarin.iOS10"> 
    <dependency id="XLabs.Platform" version="[2.2.0-pre05]" /> 
    <dependency id="Xamarin.Forms" version="2.2.0.31" /> 
</group> 

<group targetFramework="MonoAndroid"> 
    <dependency id="XLabs.Platform" version="[2.2.0-pre05]" /> 
    <dependency id="Xamarin.Forms" version="2.2.0.31" /> 
</group> 
+0

고마운 - 나는 포스트에 관해 약 30 분을 그것에 관해 생각했고, 그것을 시험해 보았다. 그리고 아직도 행운이 없다. 흥미롭게도 nuspec 파일은 nupkg 파일에 있습니다. nupkg 파일은 그룹 요소의 대상 속성을 제거한 것으로 보입니다. 이유는 여전히 파악하려고합니다. -/ – Shawn

+0

NuGet의 최신 버전을 사용하고 있습니까? NuGet의 이전 버전에서는 대상 프레임 워크 요소가 지원되지 않았습니다. –

+0

최신 릴리스 (3.4.3.855)를 사용하고 있으며 최신 빌드 (3.5)를 사용해 보았습니다. 나는 완전한 손실에 처해있다. 내가 무엇을해도 패키지는 어떤 프로젝트에도 설치된다. – Shawn

0

가 그것의 목표 모니 커를 가지고 있지 않기 때문에 문제가이 라인

<!-- Content Files --> 
<file src="..\..\docs\XLabs.Forms.Readme.md" target="content\XLabs.Forms.Readme.md" /> 

로했다 밝혀, 모든 대상 프레임 워크에 유효합니다. 일단 제거하면 모든 것이 작동하기 시작합니다. 나는 nuspec 파일 형식이 문서에 더 많은 세부 사항을 필요하다고 생각한다. :)