Utiliser le référentiel maven comme cache local ivy

Est-il possible d'utiliser le référentiel Maven local (~/.m2) comme cache de lierre local (~ / .ivy)? Ils ont des dispositions différentes.

Parfois, j'utilise Maven et parfois J'utilise SBT qui utilise Ivy en dessous, donc j'ai 2 copies des mêmes libs dans Maven et Ivy. Je voudrais utiliser le même répertoire économisant ainsi de l'espace disque et du réseau.

Merci.

27
demandé sur Yura Taras 2011-06-02 18:54:11

3 réponses

Vous pouvez spécifier le cache et la disposition du cache en utilisant le

  <cache/> Tag

.

Je pense que vous devrez modifier les motifs pour les artefacts / lierre.des fichiers xml.
La balise est décrite ici: http://ant.apache.org/ivy/history/2.0.0/settings/caches.html.
Il semble que cela devrait fonctionner, mais je n'ai jamais essayé :).

5
répondu oers 2011-06-03 06:59:54

Pour enregistrer Réseau , Il suffit de configurer ivy pour utiliser le référentiel Maven local

      <property name="local-maven2-dir" value="${user.home}/.m2/repository/" />
      <filesystem name="local-maven-2" m2compatible="true">
            <artifact
                pattern="${local-maven2-dir}/[organisation]/[module]/[revision]/[module]-[revision].[ext]" />
            <ivy
                pattern="${local-maven2-dir}/[organisation]/[module]/[revision]/[module]-[revision].pom" />
        </filesystem>
22
répondu leef 2015-06-09 20:12:40

J'ai ajouté le paramètre de cache dans le fichier suivant. Est-ce la bonne méthode? SBT télécharge toujours les fichiers présents dans Maven Local repo (~/.m2/repository).

$ cat ~/.ivy2/ivysettings.xml
<ivysettings>
    <properties environment="env" />
    <caches defaultCacheDir="${env.WORKSPACE}/.ivy2/cache" />

    <property name="local-maven2-dir" value="${user.home}/.m2/repository/" />
    <filesystem name="local-maven-2" m2compatible="true" force="false" local="true">
      <artifact pattern="${gerald.repo.dir}/[organisation]/[module]/[revision]/[module]-[revision].[ext]"/>
      <ivy pattern="${gerald.repo.dir}/[organisation]/[module]/[revision]/[module]-[revision].pom"/>
    </filesystem>

    <chain name="internal" dual="true">
      <resolver ref="local-maven-2"/>
      <resolver ref="apache-snapshot"/> 
      <resolver ref="maven2"/>
    </chain>
</ivysettings>
0
répondu tuxdna 2014-03-14 13:56:29