Visual Studio 安装NuGet软件包时,“init.ps1”脚本是否仍然有效?

h22fl7wq  于 2023-02-09  发布在  其他
关注(0)|答案(2)|浏览(127)

这个问题可能有点过时,但是安装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'*位于同一路径。

hfyxw5xn

hfyxw5xn1#

init.ps1文件需要位于tools/目录中,而不是包根目录中。

d6kp6zgx

d6kp6zgx2#

我觉得这行不通了。
我已经把init.ps1放到了工具目录下,然后配置了.nuspec,然后打包了这个包。
但是如果我第一次在解决方案中安装这个包,我就看不到powershell脚本运行。
来自Nuget产品团队成员:
https://github.com/NuGet/Home/issues/4318#issuecomment-343255043
powershel脚本对于软件包引用是不推荐的,我们不建议人们在他们的软件包中使用脚本。
我认为这是不赞成的。

相关问题