根据 this页面,我需要声明一个 <ivy:settings>
我的 Ant 构建中的任务帮助 Ant 找到 ivysettings.xml
的位置文件位于。在这个设置文件中可以找到我所有存储库的定义以及其他信息。
让我感到困惑的是:根据该页面(上面提供的链接),<ivy:settings>
可能具有以下属性任务:
-
id
-
file
-
url
-
host
-
realm
-
username
-
passwd
url
的描述是:
url of the settings file to use
暗示 ivysettings.xml
文件实际上可以存储在不同的机器上,甚至可以存储库本身?!?。
但是最后一个属性的描述(host
,realm
,username
,passwd
)是各种各样的:
http authentication (host|realm|username|passwd)
对我来说,这些描述与 url
的描述相结合, 表示 host
, realm
, username
和 passwd
属性是用于定位和检索 ivysettings.xml
的连接凭证文件;并且它们不是用于连接到远程存储库的连接凭据。
Ivy 允许您在 ivysettings.xml
中定义多个存储库这一事实进一步证明了这一点。 , 包括多个 url-resolvers
,这可能是位于具有不同访问凭据的不同服务器上的不同存储库。看到 <ivy:settings>
任务只允许您指定一组具有这些属性的凭据,这似乎再次暗示这些属性仅用于查找和下拉 ivysettings.xml
文件,而不是用于与 1+ 个存储库通信。
所以,我问:
- 这 4 个属性是否用于连接到
url
其中ivysettings.xml
生活,或者它们是否用于连接到内部定义的远程存储库ivysettings.xml
? - 如果上述问题的答案是它们是定位
ivysettings.xml
的凭证在远程url
, 那么我应该在哪里放置用于与我的实际存储库所在的 Web 服务器通信的凭据(因为ivysettings.xml
所在的服务器和我的存储库所在的服务器可能是两台不同的机器)? - 我怀疑你可以存储
ivysettings.xml
在远程url
(远程服务器)正确吗?如果是这样,我如何告诉 Ivy 查看Server A
与Loging Credentials A
找到我的ivysettings.xml
文件,但要在Server B
找到我的存储库与Login Credentials B
?
请注意,你们中的一些人可能还会发现 this问题并认为我这里的问题是它的重复。我认为上面提到的问题只是问题“我把 ivysettings.xml
文件放在哪里?”我的问题有点类似,但是,从本质上讲,它实际上是关于理解 <ivy:settings>
的意图。属性,以及他们试图查找的内容:设置文件或设置文件中定义的存储库。提前致谢。
最佳答案
ivy settings task 上的可选属性从远程服务器检索设置文件时使用。在里面settings file你可以使用 credentials标记以指定远程存储库的身份验证凭据。
例子:
关于java - Apache Ivy 设置任务和 ivysettings.xml 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12448673/