c# - 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}");
}
- 它打印我的 IPv6,然后打印我的 IPv4 地址,没有詹金斯。
- 它用詹金斯打印 ::1 和 127.0.0.1 。
解决方案
我将打印IP地址放入管道的一个阶段:
echo InetAddress.localHost.hostAddress
...并使用进程内脚本批准以允许
- staticMethod java.net.InetAddress getLocalHost
- 方法 java.net.InetAddress getHostAddress
现在我的c#程序也可以查询ip地址了。
@CaiusJard:您指出权限是正确的。谢谢你。:-)
推荐阅读
- angular - 角材料选项卡内的角反应形式给出错误
- c# - 在 Asp.net core 的 startup.cs 中获取用户名
- python - Keras:VGG16 中的 model.inputs 是什么
- c# - 使用 foreach 仅显示列表中的某些元素
- servlets - 如何在 JerseyTest 中使用@Context 参数测试 HttpservletRequest?
- cakephp - 在 CakePHP 3 中查询以查找两个日期之间的记录时出现错误“调用数组上的成员函数 format()”
- java - Java 流:从 Pair 到 Flat
配对 - c# - Azure Functions 不在 Azure 上运行,而是在本地运行
- jquery - 处理通过 css 放大到 150% 的分辨率
- node.js - 对 Telegram 机器人菜单进行编程的更智能、更简单的方法