中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

構建Xamarin.Forms NuGet

發布時間:2020-08-05 17:59:53 來源:網絡 閱讀:837 作者:wangccsy 欄目:移動開發


探索Xamarin.Forms(并在代碼中變得更加舒適)的一個很好的方法是克隆存儲庫并運行它,特別是任何ControlGallery項目。 我們知道您中有許多人已經做到了這一點,所以您可以采取的下一步是為XAMarin.Forms進行自己的定制,以便在組織內構建和分發您自己的NuGet軟件包。 在這篇文章中,讓我們在本地進行一下,然后討論如何在Visual Studio Team Services(VSTS)上進行配置。

本地設置

Windows構建所有

構建Xamarin.Forms Nuget本地最容易在Windows機器上完成。 如果您包括即將推遲使用的Windows Phone 8和8.1,或者您可以使用Visual Studio 2017,您將需要使用Visual Studio 2015。構建非常簡單:

  1. 選擇Debug或者Release

  2. 右鍵單擊解決方案,然后選擇構建。

我可以聽到你問:“但是Mac的主機呢,我需要一個嗎?”因為我第一次問了同樣的問題。 因為我們正在生成一個NuGet而不是一個iOS或Mac應用程序,我們不需要Mac構建主機。 我們正在建立針對Xamarin和Windows框架SDK。

解決方案成功完成后,您應該生成用于在IDE中顯示文檔的xml。 現在,您已準備好將新制作的程序集打包成NuGet程序包。 為了實現這一點,我們有一個方便的create-nuget.bat腳本,您可以從命令行按名稱執行。

if "%DEBUG_VERSION%"=="" set DEBUG_VERSION=0
set /a DEBUG_VERSION=%DEBUG_VERSION%+1
pushd docs
..\tools\mdoc\mdoc.exe export-msxdoc -o Xamarin.Forms.Core.xml Xamarin.Forms.Core
..\tools\mdoc\mdoc.exe export-msxdoc -o Xamarin.Forms.Xaml.xml Xamarin.Forms.Xaml
..\tools\mdoc\mdoc.exe export-msxdoc -o Xamarin.Forms.Maps.xml Xamarin.Forms.Maps
popd
pushd .nuspec
..\.nuget\NuGet.exe pack Xamarin.Forms.nuspec -properties configuration=debug;platform=anycpu -Version 9.9.%DEBUG_VERSION%
popd

您可以直接更新,以使用您選擇的版本和構建配置。 注意,當前腳本設置為期望調試配置。 另外,請注意文檔正在被更新,然后生成NuGet。

完成后,NuGet軟件包將在您的根目錄中。

在OS X上生成

雖然您可以在Mac上構建Xamarin.Forms,但我不推薦它。 您馬上必須修剪所有的Windows目標,這意味著你創建的任何NuGet只能在iOS,Android和Mac上工作。 如果你在Mac上,不能在Windows機器上構建,那么在VSTS上建立就是為您而設的!

在VSTS上云構建

Visual Studio團隊服務提供了豐富的任務來創建一個非常靈活的構建解決方案,并為我們的需求:

  • 獲取Xamarin.Forms源

  • 恢復NuGet軟件包

  • 構建解決方案

  • 生成文檔

  • 打包NuGet

  • 發布

聽起來很容易,對吧?

構建Xamarin.Forms NuGet

首先,我們需要一個關于VSTS的項目。 從您的VSTS目標網頁單擊新建項目并填寫您的首選項。 一旦創建,請轉到該項目的“構建和發布”選項卡。 創建一個新的Build定義并開始添加這些任務!

獲取Xamarin.Form源碼

VSTS為各種常見場景提供了模板,但我們將從一個空進程開始。 對于“默認代理隊列”,選擇托管。

為我們提供了一個任務,那就是獲取資源。 選擇該任務并從您要拉出Xamarin.Forms代碼的位置進行配置。

  • 項目

  • Github

  • 遠程倉庫

  • Subversion

構建Xamarin.Forms NuGet

恢復NuGet包

像往常一樣,在我們可以構建任何解決方案,包括Xamarin.Forms之前,你想確保任何NuGet依賴關系已被恢復。 Visual Studio在本地運行構建時默認為此做。

單擊添加任務并添加“NuGet”任務。 在任務的版本下拉菜單中更改為0. *。 這提供了更容易地自定義NuGet參數的功能。 對于“解決路徑”,輸入“Xamarin.Forms.sln”,因為它位于存儲庫的根目錄。

構建Xamarin.Forms NuGet

確保“安裝類型”設置為還原。

包括這些參數:

-source "https://www.nuget.org/api/v2;https://www.myget.org/F/nuget;https://www.myget.org/F/xamarinforms-ci/api/v3/index.json;https://www.myget.org/F/yoga/api/v3/index.json;https://www.myget.org/F/xamprojectci/api/v3/index.json;"

構建解決方案

現在我們已經準備好構建解決方案了。 添加另一個任務,此時選擇“Visual Studio Build”。 再次指出“Xamarin.Forms.sln”。 根據您要在“平臺和配置”字段中構建的內容,添加可以更改的變量。

Platform: $(BuildPlatform)
Configuration: $(BuildConfiguration)

當您稍后啟動構建時,這些將是您可以設置的選項。

選中Clean復選框

生成文檔

構建IDE所需的所有適當的xml文件以顯示文檔。 為此,您將需要一個批處理腳本和三個命令行任務。 您已經掌握了查找任務并將其添加到該過程中,所以讓我們放棄重復。 以下是這些任務的設置。

Batch Script
Display Name: Update XML Documentation
Path: update-docs-windows.bat

Command Line
Display Name: Generate XML Documentation (Core)
Tool: $(Build.SourcesDirectory)\tools\mdoc\mdoc.exe
Arguments: export-msxdoc -o Xamarin.Forms.Core.xml Xamarin.Forms.Core
Working Folder: docs

Command Line
Display Name: Generate XML Documentation (XAML)
Tool: $(Build.SourcesDirectory)\tools\mdoc\mdoc.exe
Arguments: export-msxdoc -o Xamarin.Forms.Xaml.xml Xamarin.Forms.Xaml
Working Folder: docs

Command Line
Display Name: Generate XML Documentation (XAML)
Tool: $(Build.SourcesDirectory)\tools\mdoc\mdoc.exe
Arguments: export-msxdoc -o Xamarin.Forms.Maps.xml Xamarin.Forms.Maps
Working Folder: docs

打包NuGet

最后,你一直在等待如此耐心的步驟! 添加“NuGet Packager”任務并對其進行配置。

Version 0.*
Patch to the nuspec: .nuspec/Xamarin.Forms.nuspec
Configuration to Package: $(BuildConfiguration)
Addition build properties: IdAppend=.Custom

發布NuGet

也許你想發布給你控制的MyGet Feed。 你可以在這里做。 為了簡單起見,我們將該包放在VSTS項目的文件夾中。 添加發布構建工件的任務。

獲得構建

保存并排隊您的構建。 從“構建”選項卡,您可以訪問構建歷史記錄,查看您的工作狀態,任何錯誤等。

構建Xamarin.Forms NuGet

準備。 設置。 構建。

現在,您將全部構建Xamarin.Forms并在您自己的組織內分發! 如果您還沒有VSTS帳戶,請注冊免費開始使用。 當然,如果您正在修復或定制每個人都可以從中受益,請在GitHub上打開一個請求并分享愛情。



向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

凤冈县| 沁源县| 浮梁县| 大理市| 确山县| 桂林市| 丰镇市| 长武县| 惠东县| 依安县| 瓮安县| 周宁县| 若羌县| 红安县| 屏边| 榆树市| 美姑县| 浮山县| 柳州市| 高陵县| 磴口县| 济南市| 天全县| 凯里市| 西畴县| 乐至县| 南川市| 洛扎县| 九龙坡区| 孝感市| 枣庄市| 东台市| 汤原县| 淮安市| 微博| 红河县| 聊城市| 忻州市| 阜康市| 马鞍山市| 涞源县|