2013-06-03 2 views
0

c'est un extrait de mon fichier en cours de pom qui fonctionne très bien:Comment insérer chemin SVN pour le fichier Sql dans maven

<execution> 
    <id>create-Myschema</id> 
    <phase>compile</phase> 
    <goals> 
     <goal>execute</goal> 
    </goals> 
    <configuration> 
     <url>jdbc:mysql://localhost:3306/MyDB</url> 
     <autocommit>true</autocommit> 
     <srcFiles> 
      <srcFile> 
       ${basedir}\target\classes\MyDB_schema.sql 
      </srcFile> 
     </srcFiles> 
     <onError>abort</onError> 
    </configuration> 
</execution> 

Maintenant, au lieu de spécifier le schema.sql à prélever à partir d'un dossier cible, Je veux donner un chemin SVN comme ça https://intranetdomain/a/b/c/database/mysql/MyDB_schema.sql
MVN doc ne dit rien à ce sujet/je n'ai pas réussi à le trouver. Toutes les permutations que j'essaie au sein de <srcFiles> ne cessent de chercher dans les répertoires de projets locaux.
Comment puis-je dire à maven d'exécuter ce sql à partir d'un emplacement svn?

Répondre

1

Je n'ai jamais entendu parler de Maven pouvant se référer/fonctionner sur des fichiers distants comme dans votre exemple.

Si je dans votre situation, je voudrais essayer de faire ce qui suit:

  1. Utilisez Antrun plugin pour appeler Ant's Get task pour télécharger le fichier dans le répertoire cible local en utilisant son URL SVN.
  2. Référez-vous au fichier téléchargé (maintenant local) exactement de la manière que vous le faites actuellement (à l'aide chemin de fichier correct)

Assurez-vous que 1. est invoquée plus tôt dans le cycle de vie Maven que 2. (par exemple assigner 1. à la phase antérieure, comme generate-resources)

+0

Merci de m'indiquer dans une certaine direction. Je vais travailler avec ça. – happybuddha

Questions connexes