我正在编写一个部署内容文件的nuget包。
我希望将它们修改为包含版本号和安装路径。
我找到了this,但似乎只修改了配置文件和源文件。
我注意到install.ps1个脚本,但它们看起来只能转换目标项目及其元素。
如果我想将一个文本文件添加到项目中该怎么办:
You just installed package $packageName version $version in $installPath
在
中安装后转换You just installed package myPackage version 1.0.12.12 in packages/myPackage-1.0.12.12
答案 0 :(得分:0)
事实上,install.ps1
脚本在内容文件复制后运行。并且在将内容文件附加到csproj之后运行:
Added file 'myfile.txt' to folder 'mypackage\content'.
Added file 'mypackage.nupkg' to folder 'mypackage'.
Successfully installed 'mypackage'.
Added file 'myfile.txt'.
Added file 'myfile.txt' to project 'myproject'
>> PowerShell scripts are being executed from 'tools' (not framework-specific)
Executing script file 'init.ps1`
这意味着,您可以从$project
参数〜:
param($installPath, $toolsPath, $package, $project)
$myFile = $project.ProjectItems.Item("myfile.txt")
$filePath = $myFile.Document.FullName
$content = Get-Content -Path "$filePath"
我不知道从这个脚本获取软件包版本的规范方法,但它是$installPath
参数的一部分。
希望这会有所帮助