2010-05-21 3 views
0

j'ai définition suivante dans ivy.xmlProblèmes avec le type et l'attribut poste d'artefact

<dependency org="southbeach" name="ego" rev="4.3.1" conf="properties->asterik" > 
    <artifact name="ego" type="conf" ext="conf" conf="properties->asterik"/> 
</dependency> 

J'ai des fichiers avec l'extension soit ou des propriétés qui conf i besoin lors de l'exécution, dans ivysettings.xml, je suis ce qui suit:

<filesystem name="privateFSa"> 
    <artifact pattern="${localRepositoryLocation}/[artifact].[ext]" /> 
</filesystem> 

Il essaie toujours de rechercher ego.jar au lieu de ego.conf. peut-il s'il vous plaît quelqu'un jeter la lumière sur cela? est-ce que je fais quelque chose de mal ou de lierre ne supporte que les fichiers tar, zip, gz, jar et pas les propriétés ou les fichiers conf?

j'ai fait contourner le problème pour l'instant dans ivysettings.xml

<filesystem name="privateFSa"> 
     <artifact pattern="${localRepositoryLocation}/[artifact].conf" /> 
</filesystem> 

mais cela ne marche pas semble bon à hardcode il conf. Merci,
Almas

Répondre

0

Sans un exemple plus détaillé, je ne suis pas sûr de ce qui ne va pas.

Voici mon projet de travail

$ find . -type f 
./build.xml 
./ivy.xml 
./ivysettings.xml 
./repository/southbeach/ego/4.3.1/confs/ego.conf 

Le fichier de lierre déclare les dépendances du projet:

$ cat ./ivy.xml 
<?xml version="1.0" encoding="ISO-8859-1"?> 
<ivy-module version="2.0"> 
    <info organisation="com.myspotontheweb" module="demo"/> 
    <dependencies> 
     <dependency org="southbeach" name="ego" rev="4.3.1"> 
      <artifact name="ego" type="conf"/> 
     </dependency> 
    </dependencies> 
</ivy-module> 

Et les paramètres de lierre fichier

$ cat ./ivysettings.xml 
<ivysettings> 
    <settings defaultResolver="privateFSa"/> 
    <resolvers> 
     <filesystem name="privateFSa"> 
      <artifact pattern="${ivy.settings.dir}/repository/[organisation]/[module]/[revision]/[type]s/[artifact].[ext]" /> 
     </filesystem> 
    </resolvers> 
</ivysettings> 

Téléchargements très bien

$ ant 
Buildfile: build.xml 
.. 
.. 
[ivy:retrieve] found southbeach#ego;4.3.1 in privateFSa 
[ivy:retrieve] downloading /????/repository/southbeach/ego/4.3.1/confs/ego.conf ... 
[ivy:retrieve] .. (0kB) 
.. 
.. 

Est-il possible que vous deviez nettoyer votre répertoire cache Ivy? (Voir la tâche ivy:cleancache)

Je pense que peut-être Ivy ramasse une ancienne résolution du module avant d'ajouter l'entrée "artefact".