如何从 Jenkins 服务器覆盖 ant 的 user.home 属性?
How to override user.home property of ant from Jenkins server?
您好,我需要一些帮助来覆盖 Jenkins 的 user.home
属性 蚂蚁。我在 jenkins 上创建了一个简单的作业,运行 是主机的从机上的构建脚本。脚本的任务之一是使用 ant 的 user.home
属性 并访问某些文件。问题是,当我尝试从从属机器的命令行回显此 属性 时,我看到 C:\Users\Administrator
但是当我 运行 来自 Jenkins 服务器的完全相同的脚本时,我看到C:\
。这种差异导致构建在 Jenkins 上失败。谁能告诉我造成这种差异的原因是什么?有什么办法可以覆盖这个吗?
我尝试在我的作业的配置文件中设置一个名为 user.home
的 属性,但它似乎没有接收到它。另一个有趣的一点是,当我在配置文件中将 user.home
值更改为一些乱码,并从从机的命令行中将 运行 ant 更改为 C:\Users\Administrator
我正在使用 ant 1.7.1
和 Jenkins 1.598
您可能将 jenkins 运行 作为与管理员不同的 ID。这是好事。
ant 中的属性是不可变的,因此您可以从 jenkins 中的 ant 插件中指定这些属性,它们将覆盖任何其他值。 (点击invoke ant buildstep下的advanced可以看到属性文本框)。
我建议您不要覆盖 user.home
,而是重构您的 ant,因此有一个 config.location
属性 默认为 user.home
但可以覆盖为任何内容你想从詹金斯那里得到。 override user.home
似乎不自然
您好,我需要一些帮助来覆盖 Jenkins 的 user.home
属性 蚂蚁。我在 jenkins 上创建了一个简单的作业,运行 是主机的从机上的构建脚本。脚本的任务之一是使用 ant 的 user.home
属性 并访问某些文件。问题是,当我尝试从从属机器的命令行回显此 属性 时,我看到 C:\Users\Administrator
但是当我 运行 来自 Jenkins 服务器的完全相同的脚本时,我看到C:\
。这种差异导致构建在 Jenkins 上失败。谁能告诉我造成这种差异的原因是什么?有什么办法可以覆盖这个吗?
我尝试在我的作业的配置文件中设置一个名为 user.home
的 属性,但它似乎没有接收到它。另一个有趣的一点是,当我在配置文件中将 user.home
值更改为一些乱码,并从从机的命令行中将 运行 ant 更改为 C:\Users\Administrator
我正在使用 ant 1.7.1
和 Jenkins 1.598
您可能将 jenkins 运行 作为与管理员不同的 ID。这是好事。
ant 中的属性是不可变的,因此您可以从 jenkins 中的 ant 插件中指定这些属性,它们将覆盖任何其他值。 (点击invoke ant buildstep下的advanced可以看到属性文本框)。
我建议您不要覆盖 user.home
,而是重构您的 ant,因此有一个 config.location
属性 默认为 user.home
但可以覆盖为任何内容你想从詹金斯那里得到。 override user.home