【发布时间】:2016-07-21 17:54:19
【问题描述】:
我想知道是否可以在 nuget.exe pack 命令的输出中抑制警告消息?具体消息会很棒,但我可以忍受压制所有消息。
nuget command line documentation 提到了 Verbosity 标志,但从未真正指定其有效值是什么。我尝试了以下方法:
nuget pack mypackage.nuspec -Verbosity Quiet
但似乎什么也没做。
这是我尝试打包的 nuspec 示例:
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>MyPackage</id>
<version>1.0.0</version>
<authors>Administrator</authors>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>My package description.</description>
</metadata>
<files>
<file src="mysourcepath\foo.dll" target="mytargetpath\foo.dll" />
</files>
</package>
我收到的警告信息是这样的:
WARNING: 1 issue(s) found with package 'MyPackage'.
Issue: Assembly outside lib folder.
Description: The assembly 'mytargetpath\foo.dll' is not inside the 'lib' folder and hence it won't be added as a reference when the package is installed into a project.
Solution: Move it into the 'lib' folder if it should be referenced.
我正在创建一个 nuget 包,它将通过 Octopus 服务器部署为应用程序。这个 dll 中的程序集不需要被任何东西引用——这个包永远不应该作为构建的一部分被引用(我们有其他更合乎逻辑的包)。
我想取消这个警告,因为我正在创建的实际包有数千个文件,这些文件都不在 lib 文件夹中。这一警告的输出噪音让我很难看到我可能感兴趣的任何其他合法警告。
更新:这个包是从一个自定义的 nuspec 文件打包而来的 - 它包含数百个项目的输出,因此指定一个项目文件不是消除警告的可行选项。 FWIW,指定项目文件确实消除了警告,因为它最终将项目输出放入 lib 文件夹 - 这是我试图避免的。
任何输入的 TIA。
【问题讨论】:
-
FWIW,我知道可以安全地忽略此警告。我的 nuget 包已成功创建,并通过 Octopus 按预期工作。我只是想知道是否可以抑制这种情况,以便在构建过程中减少混乱的输出。
标签: nuget octopus-deploy