中文字幕精品亚洲无线码二区,国产黄a三级三级三级看三级,亚洲七七久久桃花影院,丰满少妇被猛烈进入,国产小视频在线观看网站

DotNetCore跨平臺(tai)~發布腳本(ben)PowerShell的設計

回到目錄

這幾天對(dui)PS情有(you)獨(du)忠,被它的(de)(de)強大功(gong)能所(suo)(suo)希引,它可以快速部署,快速發布,將一(yi)些連帶的(de)(de)動(dong)作一(yi)次(ci)的(de)(de)完成,挺方便,類似于早期的(de)(de)bat文件,也像linux平(ping)臺的(de)(de)bash腳本,但功(gong)能上(shang),比前兩(liang)者都要強很(hen)多,下(xia)面我們(men)看一(yi)下(xia)將某個解決(jue)方案下(xia)的(de)(de)所(suo)(suo)有(you)項目一(yi)次(ci)publish的(de)(de)過(guo)程,我們(men)使用ps腳本來實現的(de)(de)。

# 作者:倉儲大叔
# 功(gong)能:發布項目到指定的地方
Param([string] $rootPath)
$scriptPath = Split-Path $script:MyInvocation.MyCommand.Path

Write-Host "Current script directory is $scriptPath" -ForegroundColor Yellow

if ([string]::IsNullOrEmpty($rootPath)) {
    $rootPath = "$scriptPath\.."
}
Write-Host "Root path used is $rootPath" -ForegroundColor Yellow

$projectPaths = 
    @{Path="$rootPath\src\LindCore.Manager";Prj="LindCore.Manager.csproj";Name="web"},
    @{Path="$rootPath\src\LindCore.Test";Prj="LindCore.Test.csproj";Name="console"}
 
$projectPaths | foreach {
    $projectPath = $_.Path
    $projectFile = $_.Prj
    $name=$_.Name
    # $outPath = $_.Path + "\obj\publish"
    $outPath = "d:\publish\"+$name
    $projectPathAndFile = "$projectPath\$projectFile"
    Write-Host "Deleting old publish files in $outPath" -ForegroundColor Yellow
    remove-item -path $outPath -Force -Recurse -ErrorAction SilentlyContinue
    Write-Host "Publishing $projectPath to $outPath" -ForegroundColor Yellow
    dotnet restore $projectPathAndFile
    dotnet build $projectPath
    dotnet publish $projectPath -o $outPath
}

注意(yi):如(ru)果(guo)你只是把跨(kua)平臺項目發到(dao)obj\publish文(wen)件(jian)夾的(de)話,那wwwroot這些(xie)文(wen)件(jian)夾不會生(sheng)成,而(er)如(ru)果(guo)發到(dao)其它磁盤(pan),將會生(sheng)成這些(xie)靜(jing)態的(de)文(wen)件(jian),這點(dian)要注意(yi)!

跨(kua)平臺項目,需要在project.json里把運行(xing)時(shi)都加上,否則(ze)你的項目保能在當前平臺運行(xing)

  "runtimes": {
    "win7-x64": {},
    "linux-x64": {},
    "osx-x64": {}
  },

感(gan)謝各位(wei)對.net core的(de)支(zhi)持!

回到目錄

posted @ 2017-06-09 16:41  張占嶺  閱讀(1831)  評論(0)    收藏  舉報