init.ps1 не выполняется (пакет nuget)

Мой проект пакета nuget имеет следующую структуру (очень просто):

- lib
 MyCom.dll
- tools
 Init.ps1

Инициируйте содержимое ps1:

param($installPath, $toolsPath, $package, $project)

$project.Object.References | Where-Object { $_.Name -eq "MyCom" } |  ForEach-Object { $_.EmbedInteropTypes = $false }

Спецификация нужета:

<?xml version="1.0"?>
<package >
  <metadata>
    <id>***</id>
    <version>***</version>
    <title>***</title>
    <authors>***</authors>
    <owners>***</owners>
    <licenseUrl>***</licenseUrl>
    <projectUrl>***</projectUrl>
    <iconUrl>***</iconUrl>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <description>***</description>
    <releaseNotes>***</releaseNotes>
    <copyright>Copyright 2018</copyright>
    <tags>***</tags>
    <references>
      <reference file="MyCom.dll" />
    </references>
  </metadata>
  <files>
    <file src="lib\MyCom.dll" target="lib" />
  </files>
</package>

Я не знаю, почему init не устанавливает для встроенного взаимодействия myCom.dll значение false. То же самое происходит, если я использую Install.ps1.

Я использую VS 2015.


person Amen Jlili    schedule 10.06.2018    source источник


Ответы (1)


Просто нужно было добавить скрипт init powershell в тег файлов.

 <files>
    <file src="tools\Init.ps1" target="tools\Init.ps1" />
 <-- more files here !-->
</files>
person Amen Jlili    schedule 10.06.2018