常春藤和ivyde以及FileSystem解析器

时间:2013-05-01 18:27:00

标签: ivy ivyde

我遇到了一个问题,即获取ant / ivy版本和eclipse / ivyde版本以便彼此协同工作。

这是我的设置,每个开发者的'git_root'都不同:

/{git_root} |
             -/projectA
             -/B  |
                   - projectB1
                   - projectB2
             -ivy_build |
                        - ivy_settings.xml
                        - local_repository

我的ivy_settings.xml包含一个FileSystem解析器,当然必须使用绝对路径。

e.g:

<filesystem name="local">
  <ivy pattern="${repository.dir}/[module]/ivy.xml" />
  <artifact pattern="${repository.dir}/[module]/[artifact].[ext]" />
</filesystem>

所以现在如何定义{repository.dir}以使ant happy和ivyde / eclipse都快乐?

2 个答案:

答案 0 :(得分:1)

我通常处理它的方式是使用每个开发人员编辑的属性文件。在该属性文件中,我希望设置repository.dir属性。

为了做到这一点,我通常会在svn / git repo中检查ivysettings.local-sample.properties。该文件将包含具有要完成的值的预期属性。

每个开发人员都会检出示例文件并将其副本复制到ivysettings.local.properties。然后他们编辑文件以在其文件系统上设置路径。

ivysettings.xml中添加:

<properties file="ivysettings.local.properties" />

答案 1 :(得分:1)

我通常使用 ivy.settings.dir 属性,该属性解析为常春藤设置文件的本地目录:

<filesystem name="myrepos">
    <artifact pattern="${ivy.settings.dir}/local_repository/[organisation]/[artifact]-[revision].[ext]" />
</filesystem>