begin process at 2012 02 15 12:10:27
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Aide et documentation

 > 

Déploiement java


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Déploiement java

lundi 14 avril 2008 à 15:18:37 | Déploiement java

plop3000

Bonjour,

Dans le cadre d'un projet, j'ai développé une application. Cette application utilise entre autre un fichier de configuration. Pour le déploiement de l'application je voudrais donc avoir quelquechose du genre :

    - dossierDeMonAppli
              > monAppli.jar
              > monFichierDeConfig.ini

Comment puis je faire pour créer une installation propre ?

Merci d'avance
lundi 14 avril 2008 à 15:54:55 | Re : Déploiement java

Ombitious_Developper

Réponse acceptée !
Salut:

Utilises ANT pour automatiser toutes ces tâches.
lundi 14 avril 2008 à 20:52:06 | Re : Déploiement java

Twinuts

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Salut,

+1 pour ANT (il est très pratique pour compiler, générer un jar, créer une archive zip, exécuter une application (un script,  ou autre), etc...)




------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO
mardi 15 avril 2008 à 08:50:00 | Re : Déploiement java

plop3000

Ok merci pour vos réponses, je vais tester ça
mercredi 16 avril 2008 à 11:54:00 | Re : Déploiement java

plop3000

Bonjour,

J'ai donc testé ANT, ça fonctionne bien, j'ai réussi à faire ce que je voulais mais j'ai encore un petit souci et je ne sais pas comment le régler :

Grace à ANT, j'ai généré un JAR de mon application. Mais mon appli se sert elle meme d'autres JAR et je ne sais pas comment faire pour que gérer ces dépendances. Y a t il une technique avec ANT ?

J'ai essayé de mettre les jar dont se sert mon appli dans le même dossier que mon appli mais ça ne fonctionne pas, j'obtiens une exception NoClassDefFound qui pointe sur une des classes du jar dont dépend mon appli.

Une idée ?


mercredi 16 avril 2008 à 12:24:26 | Re : Déploiement java

Twinuts

Membre Club Administrateur CodeS-SourceS
Salut,

recréer le manifest de ton jar en ajoutant les dépendances dans le champ Class-Path.

exemple :
<jar jarfile="le nom du jar" basedir="./bin">
  <manifest>
    <attribute name="Main-Class"            value="la main classe"/>
    <attribute name="Class-Path"            value="jar1.jar , jar2.jar , jar3.jar"/>
  </manifest>
</jar>




------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO
mercredi 16 avril 2008 à 17:09:14 | Re : Déploiement java

plop3000

Voila ce que j'ai dans mon fichier build.xml :

<project name="projet" basedir=".">
   
        <property name="src.dir" value="src"/>
        <property name="build.dir" value="build"/>
        <property name="dist.dir" value="monAppli"/>
        <property name="ressources.dir" value="ressources"/>
        <property name="gram.dir" value="grammaires"/>
        <property name="main-class" value="main.monMain"/>
   
        <target name="init">
            <!-- Create the build directory structure used by compile -->
            <mkdir dir="${build.dir}" />
          </target>
   
          <target name="compile" depends="init">
            <!-- Run javac to compile the source files -->
            <javac srcdir="${src.dir}" destdir="${build.dir}">
              <classpath>
                <!-- Include all jar files  -->
                <fileset dir="import">
                      <include name="*.jar"/>
                </fileset>
              </classpath>
            </javac>
          </target>
        
   
        <!-- target lancée comme suit : "ant tacheJSA" dans la console -->
        <target name="tacheJSA" depends="compile">
           
            <!-- création d'un répertoire pour le JAR -->
            <mkdir dir="${dist.dir}"/>
            <mkdir dir="${dist.dir}/${ressources.dir}"/>
            <mkdir dir="${dist.dir}/${gram.dir}"/>
           
            <!-- Copie des fichiers de ressources nécessaires-->
            <copy file="ressources/config.ini" todir="${dist.dir}/${ressources.dir}"/>
            <copy file="ressources/rules.xml" todir="${dist.dir}/${ressources.dir}"/>
            <copy file="ressources/mots_clefs.xls" todir="${dist.dir}/${ressources.dir}"/>
           
            <!-- Copie des fichiers grammaires-->
            <copy file="ressources/DmlSQL2.g" todir="${dist.dir}/${gram.dir}"/>
            <copy file="ressources/SqlSQL2.g" todir="${dist.dir}/${gram.dir}"/>
            <copy file="ressources/DmlSQL2ImpTokenTypes.txt" todir="${dist.dir}/${gram.dir}"/>
            <copy file="ressources/SqlSQL2ImpTokenTypes.txt" todir="${dist.dir}/${gram.dir}"/>
           
            <!-- création du JAR -->
            <jar destfile="${dist.dir}/${ant.project.name}.jar" basedir="${build.dir}">
                    <manifest>
                        <!-- on indique la classe principale du JAR-->
                        <attribute name="Main-Class" value="${main-class}"/>
                        <!-- on indique les jar dont on a besoin-->
                        <attribute name="Class-Path" value="jxl.jar, jdom.jar, antlr-2.7.7.jar"/>
                    </manifest>
            </jar>   
       
        </target>
   
</project>

Mais dès que je lance l'appli via la commande "java -jar projet.jar" il me sort des erreurs de classNotFound en pointant sur une des classes des jar dont dépend mon projet.

Please help...
mercredi 16 avril 2008 à 17:38:55 | Re : Déploiement java

Twinuts

Membre Club Administrateur CodeS-SourceS

Salut,

met des espaces avant et après les virgules dans le champs class-path.
Tel que tu as renseigné le champ class-path les jar sont au même niveau que le jar de l'application.
Si ce n'est pas le cas et qu'ils sont dans un répertoire 'lib' (par exemple) il faut que tu mettes :
<attribute name="Class-Path" value="./lib/jxl.jar , ./lib/jdom.jar, ./lib/antlr-2.7.7.jar"/>

ATTENTION : ne met pas d'anti slash, même si tu es sous windows







------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO
jeudi 17 avril 2008 à 10:38:43 | Re : Déploiement java

plop3000

De mieux en mieux, maintenant lorsque je lance mon jar, celui ci ne trouve pas ma classe main !!! Je vois pas le problème...

Ma classe main est pourtant JSAWithParameters qui se trouve dans le package main... ANT parvient à me créer mon JAR sans erreurs mais au moment où je lance le JAR j'ai l'erreur suivante :

"Exception in thread "main" java.lang.NoClassDefFoundError : main/JSAWithParameters
Caused by: java.lang.ClassNotFoundException : main.JSAWithParameters

<?xml version="1.0" encoding="UTF-8"?>
<project name="JSA" basedir=".">
   
        <property name="src.dir" value="src"/>
        <property name="build.dir" value="build"/>
        <property name="Main-Class" value="main.JSAWithParameters"/>
        <property name="dist.dir" value="AppliJSA"/>
        <property name="ressources.dir" value="ressources"/>
        <property name="gram.dir" value="grammaires"/>
   
        <target name="init">
            <!-- Create the build directory structure used by compile -->
            <mkdir dir="${build.dir}" />
          </target>
   
          <target name="compile" depends="init">
            <!-- Run javac to compile the source files -->
            <javac srcdir="${src.dir}" destdir="${build.dir}" />
          </target>
        
   
        <!-- target lancée comme suit : "ant tacheJSA" dans la console -->
        <target name="tacheJSA" depends="compile">
           
            <!-- création d'un répertoire pour le JAR -->
            <mkdir dir="${dist.dir}"/>
            <mkdir dir="${dist.dir}/${ressources.dir}"/>
            <mkdir dir="${dist.dir}/${gram.dir}"/>
           
            <!-- Copie des fichiers de ressources nécessaires-->
            <copy file="ressources/config.ini" todir="${dist.dir}/${ressources.dir}"/>
            <copy file="ressources/rules.xml" todir="${dist.dir}/${ressources.dir}"/>
            <copy file="ressources/mots_clefs.xls" todir="${dist.dir}/${ressources.dir}"/>
           
            <!-- Copie des fichiers grammaires-->
            <copy file="ressources/DmlSQL2.g" todir="${dist.dir}/${gram.dir}"/>
            <copy file="ressources/SqlSQL2.g" todir="${dist.dir}/${gram.dir}"/>
            <copy file="ressources/DmlSQL2ImpTokenTypes.txt" todir="${dist.dir}/${gram.dir}"/>
            <copy file="ressources/SqlSQL2ImpTokenTypes.txt" todir="${dist.dir}/${gram.dir}"/>
           
            <!-- création du JAR nommé JSA-->
            <jar destfile="${dist.dir}/${ant.project.name}.jar" basedir="${build.dir}">
                    <manifest>
                        <!-- on indique la classe principale du JAR-->
                        <attribute name="Main-Class" value="${Main-Class}"/>
                        <!-- on indique les jar dont on a besoin-->
                        <attribute name="Class-Path" value="C:/jxl.jar , C:/jdom.jar , C:/antlr-2.7.7.jar"/>
                    </manifest>
            </jar>
       
        </target>
   
</project>
jeudi 17 avril 2008 à 10:52:31 | Re : Déploiement java

Twinuts

Membre Club Administrateur CodeS-SourceS

Salut,

tu as regardé si dans le jar tu as bien tout, et que son manifest soit bien renseigné ?

ARRRRRRRGGGGGG, c'est quoi ce C: dans ton Class-Path ?????????????????? jamais tu fais ça..... de plus java c'est portable hors tes clients ne sont pas forcément TOUS sous windows donc ton C:............... et même si tu brides java sous windows, jamais tu install des fichiers à la racine du DD d'un client... au minimum tu fais un répertoire lib (ou autre) dans ton projet et tu y colle le tout..... une application n'est pas censé s'installer à la sauvage en mettant des fichiers partout... elle est plutôt censé rester dans son sandbox.






------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO


Cette discussion est classée dans : java, application, déploiement


Répondre à ce message

Sujets en rapport avec ce message

déploiement d'une application Java via java Webstart [ par ourka631 ] Bonjour,Je vous demande comment je peux installer mes propres classes Java, ainsi que mes fichiers.dll et .jar pour le déploiement de mon application application client serveur en java [ par florent1 ] Voici mon problème:je dois réaliser une application client serveur en java (avec Jbuilder). Cette appli devra attaquer une base Oracle.Est ce que l'in Fenêtre DOS [ par MHidden ] Bonjour, Je développe une application Java sous Windows. Quand je l'exécute, une fenêtre DOS s'ouvre, et ensuite la fenêtre de l'appli apparaît. Mais Icône pour application Java [ par Mikonyx ] Est-il possible de remplacer la tasse de café présente dans toutes les applications Java par un icône personnel? Ah aussi... existe t'il un equivalent Exécuter une ligne de commande depuis une application... [ par nan ] Bonjour tout le monde,Alors voilà je débute en Java et je me demande comment il est possible d'éxécuter une ligne de commande avec arguments et optio Pq TOMCAT comme serveur ??? [ par Ghyzi ] Bonjour,je dois développer un logiciel en java dans le cadre de mes études.J'utilise un modèle client-serveur. Je veux donc mettre mon application pri Lancement d'application à partir de Java [ par BugsByte ] Salut,J'ai plusieurs questions concernant le lancement d'application à partir d'un programme Java:Est-il possible de lancer une application à partir d Réalisation d'une application JAVA qui permet de decouper une image [ par tarikphp ] Bonjour,bon,je suis entrain de preparer mon projet de fin d'etude.je vaux realiser une application JAVA qui permet de decouper une image en plusieurs executable java ??? [ par dread_20 ] Bonjour, je souhaiterai savoir s'il est possible de créer une application a partir de sources en java.Et le plus dur, que cette application puisse tou Image en java [ par Fraisoo37 ] Bonjour,Je suis en train de réaliser une application java et j'aimerais insérer des images dans mon application.J'ai divers Panels et dans le panel du


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,154 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales