nuget-package - 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 }
Nuget 规格:
<?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。
解决方案
只需将 init powershell 脚本添加到 files 标记。
<files>
<file src="tools\Init.ps1" target="tools\Init.ps1" />
<-- more files here !-->
</files>
推荐阅读
- excel - Excel VBA 宏错误:过程太大
- javascript - 热图 yAxis 更改未按预期工作
- c++ - 以最少的等待时间迭代数组 2 种方式(动态编程)
- angular - 我应该如何处理 angular pwa 中的新服务器 URL 重定向?
- python - 如何使用 Flask-MQTT 处理失败的连接
- arrays - 为什么无论我在 do while 循环中输入什么,n 值都保持为 4?
- linux - 如何在 ARM64 Linux 中创建 1:1 MMU 映射?
- numpy - 将数组的掩码选择与原始数组合并
- javascript - 如何使用 Javascript 隐藏按钮
- android - Android Media Store API 在外部存储中找不到由 Google Photo 创建的图像