我在nuget包的init.ps1中遇到ps脚本有问题.我正在尝试在安装包时创建解决方案文件夹,然后将dlls/pdbs复制到此文件夹(并删除项目中包安装的源dll/pdbs).我能够创建解决方案文件夹,但无法将文件从\ content\temp目录复制到解决方案文件夹.事实上,我真的想要文件系统上的真实文件夹和要匹配的解决方案文件夹,因此副本应该将文件复制到真实文件系统文件夹,然后添加到解决方案文件夹中.
复制部分不起作用,我没有收到任何输出错误.有点丢失.
param($installPath, $toolsPath, $package, $project)
# Get the open solution.
$solution = Get-Interface $dte.Solution ([EnvDTE80.Solution2])
# Create the parent solution folder.
$parentProject = $solution.AddSolutionFolder("MyDlls")
# Create a child solution folder.
$parentSolutionFolder = Get-Interface $parentProject.Object ([EnvDTE80.SolutionFolder])
$fileName = (Join-Path $installPath "\temp\mydll")
$projectFile = $parentSolutionFolder.AddFromFile($fileName)
Write-Host ""
Write-Host $sourcePath
Write-Host $parentSolutionFolder
Run Code Online (Sandbox Code Playgroud)
小智 8
我遇到了同样的问题,并在BuildDeploySupport项目中找到了一个完成此操作的PowerShell脚本.您需要做的就是在几个地方更新您要复制的文件夹的名称(在下面链接的ps1中展开\ Support).
请参阅BuildDeploySupport解决方案文件夹复制Init.ps1
来自链接(截至2017年11月30日):
param($installPath, $toolsPath, $package)
# find out where to put the files, we're going to create a deploy directory
# at the same level as the solution.
$rootDir = (Get-Item $installPath).parent.parent.fullname
$deployTarget = "$rootDir\Deploy\Support\"
# create our deploy support directory if it doesn't exist yet
$deploySource = join-path $installPath 'tools/deploy'
if (!(test-path $deployTarget)) {
mkdir $deployTarget
}
# copy everything in there
Copy-Item "$deploySource/*" $deployTarget -Recurse -Force
# get the active solution
$solution = Get-Interface $dte.Solution ([EnvDTE80.Solution2])
# create a deploy solution folder if it doesn't exist
$deployFolder = $solution.Projects | where-object { $_.ProjectName -eq "Deploy" } | select -first 1
if(!$deployFolder) {
$deployFolder = $solution.AddSolutionFolder("Deploy")
}
# add all our support deploy scripts to our Support solution folder
$folderItems = Get-Interface $deployFolder.ProjectItems ([EnvDTE.ProjectItems])
ls $deployTarget | foreach-object {
$folderItems.AddFromFile($_.FullName) > $null
} > $null
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6148 次 |
| 最近记录: |