我正在構建nuget包,我希望它在任何項目上安裝時添加js
腳本。 .js
文件必須將其構建操作設置爲嵌入式資源。構建類型設置爲嵌入式資源的Nuget文件
我曾嘗試加入Install.ps1
腳本打包下面內容:
param($installPath, $toolsPath, $package, $project)
$item = $project.projectItems.Item("my_script.js")
$item.Properties.Item("BuildAction").Value = [int]3
但它返回的錯誤:
你不能調用一個空值表達式的方法。 + $ item.Properties.Item(「BuildAction的」)。值= [INT] 3
我認爲錯誤是因爲Install.ps1
腳本添加軟件包文件的解決方案之前運行,因此沒有my_script.js
所以我們可以不會改變它的構建行動...
那麼,我們該怎麼做呢?
有沒有什麼辦法可以在項目中部署文件後運行腳本?這可能是問題
更新
一件事是,my_script.js
不Content
文件夾的根。我打電話時是否需要解決它的路徑:
$project.projectItems.Item("myfolder/my_script.js")
?
更新2
都能跟得上!即使在解決上述文件夾後仍存在問題。
install.ps1腳本最後運行。在文件添加到項目之前它不運行。我會在包管理器控制檯中檢查PowerShell腳本以查看它是否有效。你的my_script.js文件也被添加到項目的根目錄嗎? –
是的!儘管它會拋出異常,但它會添加文件... – AmiNadimi