IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Blocage Réalisation Makefile


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 61
    Par défaut Blocage Réalisation Makefile
    Bonjour à tous,
    J'ai réalisé un projet en Java avec Eclipse et je souhaiterais réaliser un makefile mais je suis un peu paumé avec xml, ant, jar etc. J'ai fais pas mal de recherche mais je ne m'y retrouve pas. Pouvez-vous m'éclairer s'il vous plait?

    Merci à vous

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 61
    Par défaut
    Voici ce que j'ai dans le build.xml:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    <project name="myproj" default="dist" basedir=".">
        <description>
            simple example build file
        </description>
      <!-- set global properties for this build -->
      <property name="src" location="src"/>
      <property name="build" location="build"/>
      <property name="dist"  location="dist"/>
     
      <target name="init">
        <!-- Create the time stamp -->
        <tstamp/>
        <!-- Create the build directory structure used by compile -->
        <mkdir dir="${build}"/>
      </target>
     
      <target name="compile" depends="init"
            description="compile the source " >
        <!-- Compile the java code from ${src} into ${build} -->
        <javac srcdir="${src}" destdir="${build}"/>
      </target>
     
      <target name="dist" depends="compile"
            description="generate the distribution" >
        <!-- Create the distribution directory -->
        <mkdir dir="${dist}/lib"/>
     
        <!-- Put everything in ${build} into the MyProject-${DSTAMP}.jar file -->
        <jar jarfile="${dist}/lib/MyProject-${DSTAMP}.jar" basedir="${build}"/>
      </target>
     
      <target name="clean"
            description="clean up" >
        <!-- Delete the ${build} and ${dist} directory trees -->
        <delete dir="${build}"/>
        <delete dir="${dist}"/>
      </target>
    </project>
    ca compile bien les .java, les .class sont bien créés dans le fichier build mais je ne sais pas comment créer un binaire... Merci pour votre aide

  3. #3
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    de quel binaire vous parlez?? Vous créez déjà votre jar d'apès votre build.xml

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 61
    Par défaut
    Bonjour,
    Bah je voudrais pouvoir faire un make qui me sort un fichier binaire permettant de lancer mon application.

    Et là je rencontre un problème avec mon .jar. Quand je fais java -jar nomprojet.jar et bien il me sort une erreur de pointeur null... Merci pour votre aide

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Exception in thread "main" java.lang.NoClassDefFoundError: main/Main/java
    Caused by: java.lang.ClassNotFoundException: main.Main.java
    	at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
    Voici mon nouveau build.xml:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    <project default="myproj">
     
    <target name="clean">
    	<delete dir="bin"/>
    	<delete dir="exe"/>
    </target>
     
     
    <target name="compile" depends="clean">
    	<mkdir dir="bin"/>
    	<javac srcdir="src" destdir="bin"/>
    </target>
     
     
    <target name="jar" depends="compile">
    	<mkdir dir="exe"/>
    	<jar destfile="exe/myproj.jar" basedir="bin">
    		<manifest>
    			<attribute name="Main-Class" value="main.Main"/>
                <attribute name="Main-Class" value="main.Main"/>
                <attribute name="Calculate-Class" value="main.Calculate"/>
                <attribute name="Extract-Class"value="main.Extract"/>
                <attribute name="Comp-Class" value="main.Comp"/>
                <attribute name="G-Class" value="main.G"/>
                <attribute name="Text-Class" value="main.Text"/>
                <attribute name="Display-Class" value="main.Display"/>
                <attribute name="Lex-Class" value="main.Lex"/>
                <attribute name="Outside-Class" value="main.Outside"/>
                <attribute name="Travel-Class" value="main.Travel"/>
                <attribute name="Pir-Class" value="main.Pir"/>
                <attribute name="Close-Class" value="main.Close"/>
                <attribute name="Open-Class" value="main.Open"/>
                <attribute name="Decode-Class" value="main.Decode"/>
                <attribute name="Poly-Class" value="main.Poly"/>
                <attribute name="Return-Class" value="main.Return"/>
                <attribute name="Differ-Class" value="main.Differ"/>
                <attribute name="Random-Class" value="main.Random"/>
                <attribute name="Use-Class" value="main.Use"/>
                <attribute name="Test-Class" value="main.Test"/>
                <attribute name="Weak-Class" value="main.Weak"/>
                <attribute name="Pile-Class" value="main.Pile"/>
                <attribute name="Stock-Class" value="main.Stock"/>
    		</manifest>
    	</jar>
    </target>
     
     
    <target name="myproj" depends="jar">
    	<java jar="exe/myproj.jar" fork="true"/>
    </target>
     
    </project>

  5. #5
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Exception in thread "main" java.lang.NoClassDefFoundError: main/Main/java
    C'est curieux, parce que ce n'est pas ce que dit votre build.xml. Dans celui-ci vous spécifié que c'est main.Main, pas main.Main.java. Il viens d'ou ce main.Main.java, vous n'auriez pas un MANIFEST.MF qui trainerais dans vos sources?

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 61
    Par défaut
    En fait dans mon arborescence j'ai un dossier src et dans ce source j'ai un package appelé main. J'ai développé sous Eclipse et je n'ai pas voulu laisser le package par défaut... Faudrait-il que je change le nom du package?

Discussions similaires

  1. Problème à réaliser un Makefile
    Par Goundy dans le forum Systèmes de compilation
    Réponses: 2
    Dernier message: 05/10/2007, 15h56
  2. msi ou comment réaliser un installeur?
    Par herzleid dans le forum Delphi
    Réponses: 11
    Dernier message: 09/04/2007, 19h27
  3. [Kylix] Blocage Kylix 3
    Par DevX dans le forum EDI
    Réponses: 2
    Dernier message: 13/11/2002, 20h29
  4. [imprecis]Réaliser a^n avec seulement l'opérateur d'addition
    Par Amon dans le forum Algorithmes et structures de données
    Réponses: 18
    Dernier message: 08/11/2002, 22h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo