Question

Comment préciser exactement l'emplacement de tous les fichiers de propriétés dans le manifeste ant?

Mon fichier jar ne fonctionne pas car il ne trouve pas les propriétés log4j, Spring, etc.

Ces fichiers sont tous contenus dans un dossier appelé " server-config " qui se trouve au même niveau que le code source, à savoir:

  • META-INF
  • com
  • configuration du serveur

En gros, je veux savoir ce que je dois ajouter à la propriété Class-Path pour que le fichier jar soit conscient de tous ces fichiers de propriétés dans le dossier server-config.

Voici ma tâche actuelle:

<jar destfile="${root.home}/onejar/build/main/main.jar" basedir="${build.home}">
        <manifest>
            <attribute name="Class-Path" value=".;server-config" />
        </manifest>
        <include name="com/mycompany/client/*"/>
        <include name="com/mycompany/portable/util/*"/>
        <include name="com/mycompany/request/*"/>
        <include name="com/mycompany/model/*"/>
        <include name="com/mycompany/controller/*"/>
        <include name="com/mycompany/helpers/*"/>
        <include name="server-config/*"/>
    </jar>

J'ai essayé plusieurs choses et aucune d'entre elles ne fonctionne, je continue à avoir des erreurs car le fichier n'a pas été trouvé.

Toute aide serait grandement appréciée!

Était-ce utile?

La solution

Vous pouvez supprimer la totalité de la partie <manifest... - ce n'est pas ce que fait l'attribut manifeste Class-Path. Cela concerne les éléments externes au fichier JAR.

La ligne <include name="server-config/*"/> devrait fonctionner - si le répertoire server-config existe dans votre répertoire $ {build.home}. Vous aurez probablement besoin d’une tâche pour les copier là-bas. Vous indiquez que le code source se trouve au même niveau, mais vous ne précisez pas où ils sont compilés pour .

Un exemple -

<mkdir dir="${build.dir}/server-config"
<copy todir="${build.dir}/server-config">
  <fileset dir="${src.dir}/server-config">
    <include name="*"/>
  </fileset>
</copy>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top