首页 > 解决方案 > c# 程序如果由 jenkins 执行,则无法获取我的 IP 地址

问题描述

如果 jenkins 执行我的 c# 程序而没有执行它,它不会获得我的 IP 地址。

Jenkins 和 c# 程序在 Windows 机器上运行(无从机)。Jenkins 在同一台机器上运行,并由本地系统帐户作为服务启动。c# 程序作为自由样式构建项目(不是管道)的 Windows 批处理构建步骤运行。

IPAddress[] addresses = Dns.GetHostAddresses(Dns.GetHostName());
foreach (IPAddress ip in addresses)
{
    Console.Writeline($"ip = {ip}");
}

标签: c#jenkins

解决方案


我将打印IP地址放入管道的一个阶段:

echo InetAddress.localHost.hostAddress

...并使用进程内脚本批准以允许

  • staticMethod java.net.InetAddress getLocalHost
  • 方法 java.net.InetAddress getHostAddress

现在我的c#程序也可以查询ip地址了。

@CaiusJard:您指出权限是正确的。谢谢你。:-)


推荐阅读