这个问题可能有点过时,但是安装nupkg时a“init.ps1”* 脚本是否仍然有效?
我尝试使用 *'install.ps1'*和 ' uninstall.ps1',但经过一番研究后,我发现这些文件在**Visual Studio 2017(我目前使用的Visual版本)**中停止工作,但我没有找到任何关于 *'init.ps1'*的最新信息(是2017年或2018年的最新信息)。
我的脚本在单独执行时工作正常但似乎在安装程序包时未被调用。
如果 *'init.ps1'*仍然有效,这是我的 *'. nuspec'*文件,我是否做错了什么?:
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
<metadata>
<id>NugetTry</id>
<version>0.0.142</version>
<title>NugetTry</title>
<authors>rwpk9</authors>
<description>Description</description>
<copyright>Copyright © 2023</copyright>
<dependencies>
<group targetFramework=".NETFramework4.7.2">
<dependency id="EntityFramework" version="6.4.4" />
<dependency id="Microsoft.AspNet.Mvc.es" version="5.2.9" />
<dependency id="Newtonsoft.Json" version="13.0.2" />
</group>
</dependencies>
</metadata>
<files xmlns="">
<file src="init.ps1" target="." />
</files>
<powershell xmlns="">
<scripts>
<base><![CDATA[init.ps1]]></base>
</scripts>
</powershell>
</package>
我的 *“init.ps1'*与 *”. nuspec'*位于同一路径。
2条答案
按热度按时间hfyxw5xn1#
init.ps1
文件需要位于tools/
目录中,而不是包根目录中。d6kp6zgx2#
我觉得这行不通了。
我已经把init.ps1放到了工具目录下,然后配置了.nuspec,然后打包了这个包。
但是如果我第一次在解决方案中安装这个包,我就看不到powershell脚本运行。
来自Nuget产品团队成员:
https://github.com/NuGet/Home/issues/4318#issuecomment-343255043
powershel脚本对于软件包引用是不推荐的,我们不建议人们在他们的软件包中使用脚本。
我认为这是不赞成的。