Nuget push无法在非交互模式下提示输入
我正在运行这个命令Nuget push无法在非交互模式下提示输入,nuget,Nuget,我正在运行这个命令 nuget push Package.1.0.0.0.nupkg -s http://mysource.com/ xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx -ConfigFile ..\..\.nuget\nuget.config 我收到这个错误 UserName: Cannot prompt for input in non-interactive mode. 我已经指定了nuget.config文件,它的用户名和cleartextpas
nuget push Package.1.0.0.0.nupkg -s http://mysource.com/ xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx -ConfigFile ..\..\.nuget\nuget.config
我收到这个错误
UserName: Cannot prompt for input in non-interactive mode.
我已经指定了nuget.config文件,它的用户名和cleartextpassword如下
<packageSources>
<add key="NuGet official package source" value="http://www.nuget.org/api/v2" />
<add key="https://www.nuget.org/api/v2/" value="https://www.nuget.org/api/v2/" />
<add key="PackageName" value="http://mysource.com/nuget" />
</packageSources>
....
<packageSourceCredentials>
<PackageName>
<add key="Username" value="<username>" />
<add key="ClearTextPassword" value="<clearpassword>" />
</PackageName>
</packageSourceCredentials>
....
为什么这样不行?我正在VS2013中运行批处理文件我使用的nuget版本是,nuget版本:2.8.50926.602不知道这是否有帮助,但是。我在尝试推送到我们的私人Klondike服务器时也犯了同样的错误。我们通过使用有效的ApiKey而不是修改配置来解决这个问题。我现在唯一能做到这一点的方法是基于
- 我获取了源URL(
)并使用iexplore直接访问它http://mysource.com/nuget
- Windows要求我提供身份验证凭据,我手动输入了这些凭据,并要求Windows保存密码(这将将它们存储在用户的Windows凭据存储中)
- 然后我重新运行执行nuget push操作的PS1脚本,它一点也没有抱怨
当然,这不是它想要的工作方式,但至少它让我摆脱了你所经历的同样情况。将其视为一种解决方法。这不是用于使用nuget.config文件,但我在运行命令行PUSH时遇到了相同的问题 转到您的VSTS网站并单击程序包链接。如果有提要,请单击“连接到提要”链接。否则,屏幕上将显示相同的链接/按钮。单击生成NuGet凭据。复制命令并将其粘贴到VS PM控制台窗口中。然后按照页面上的说明#3操作,它在内部运行,而另一个可能的修复方法(在我的案例中是有效的)是,您用于验证的Visual Studio Team Services帐户的个人访问令牌(PAS)已过期。默认值为90天,但也可以选择180天或1年 如果您不知道在哪里执行此操作:
- 登录到visual studio团队服务
- 将鼠标悬停在屏幕右上方的个人资料图标上
- 点击“安全性”
- 在左侧菜单上单击“个人访问令牌”
- 您可以单击过期PAS的说明以查看其属性
- 在详细信息屏幕上更改“过期时间”值,然后单击屏幕底部的“保存”李>