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

Maven Java Discussion :

Comment gerer des librairy qui font appel a des dll natif?


Sujet :

Maven Java

  1. #1
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Comment gerer des librairy qui font appel a des dll natif?
    Bonjour,

    j'ai esseyer de charger la librairie graphique LWGJL avec eclipse indigo, maven 3.0.4 and m2eclispe 1.0.200.20111228-1245, en ajoutant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <dependencies>
    		<dependency>
    			<groupId>org.lwjgl.lwjgl</groupId>
    			<artifactId>lwjgl</artifactId>
    			<version>2.8.1</version>
    		</dependency>
     
    		<dependency>
        			<groupId>org.lwjgl.lwjgl</groupId>
        			<artifactId>lwjgl_util</artifactId>
        			<version>2.8.1</version>
    		</dependency>
    </dependencies>
    a mon POM.xml mais ça ne marche pas, en effet, je doit indiquer ou se trouve certain DLL, apparament maven ne prend pas ça en charge (ou je n'ai pas trouver comment faire)

    Je les ais donc ajouter moi meme mais des que je clic sur ok maven supprime mon lien D:



    donc evidamment eclipse n'est pas content:
    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
     
     
    Exception in thread "main" java.lang.UnsatisfiedLinkError: no lwjgl in java.library.path
    	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1734)
    	at java.lang.Runtime.loadLibrary0(Runtime.java:823)
    	at java.lang.System.loadLibrary(System.java:1028)
    	at org.lwjgl.Sys$1.run(Sys.java:73)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at org.lwjgl.Sys.doLoadLibrary(Sys.java:66)
    	at org.lwjgl.Sys.loadLibrary(Sys.java:95)
    	at org.lwjgl.Sys.<clinit>(Sys.java:112)
    	at org.lwjgl.opengl.Display.<clinit>(Display.java:135)
    	at runnable.Tut05.createWindow(Tut05.java:157)
    	at runnable.Tut05.init(Tut05.java:177)
    	at runnable.Tut05.run(Tut05.java:32)
    	at runnable.Tut05.main(Tut05.java:24)
    quelqu'un saurait comment faire pour que maven gere automatique ce genre de librairie?
    ou comment faire pour que maven me laisse rentrer ce chemin?

    thanks =D

  2. #2
    Membre éprouvé

    Homme Profil pro
    Architecte technique
    Inscrit en
    Juin 2005
    Messages
    588
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2005
    Messages : 588
    Points : 1 230
    Points
    1 230
    Par défaut
    GLWGJL Maven et Google !!!!!

  3. #3
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Merci, tres utile et constructif.

    J'ai decouvert maven il y a moins de 24h et j'ai besoin de charger un librairie qui utilise des JNI, pas simple quand on debute, evidament j'ai deja lu les 20 premiere pages google, les forums etant mon dernier recours.

    A l'avenir je resterais sur les forum anglophone ou on hesite pas a aider.

    Je poste quand meme la solution pour le prochain qui passera par ici, elle etait pas facile a trouver.

    Solution :

    1/ajouter les dependances de lwjgl a votre pom.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
     
    <dependencies>
    		<dependency>
    			<groupId>org.lwjgl.lwjgl</groupId>
    			<artifactId>lwjgl</artifactId>
    			<version>2.8.1</version>
    		</dependency>
     
    		<dependency>
        		<groupId>org.lwjgl.lwjgl</groupId>
        		<artifactId>lwjgl_util</artifactId>
        		<version>2.8.1</version>
    		</dependency>
     
    </dependencies>
    2/maintenant installer ce plugin ecplipse : http://code.google.com/p/mavennatives/
    faire help>install new software dans eclipse.
    cliquer add, dans name ecrire ce que vous voulez, dans location mettre : http://mavennatives.googlecode.com/svn/eclipse-update/

    installer tous ce qui se trouve dessus.

    3/ajouter ce code de plugin a pom.xml, il va se servir du plugin precedament installé dans eclipse pour lier les dll a la librairie
    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
    53
    54
    55
    56
    57
    58
    59
    60
     
    	<build>
    		<plugins>
    			<plugin>
    				<artifactId>maven-compiler-plugin</artifactId>
    				<version>2.3.2</version>
    				<configuration>
    					<source>1.5</source>
    					<target>1.5</target>
    					<encoding>UTF-8</encoding>
    				</configuration>
    			</plugin>
    			<plugin>
    				<groupId>com.googlecode.mavennatives</groupId>
    				<artifactId>maven-nativedependencies-plugin</artifactId>
    				<version>0.0.6</version>
    				<executions>
    					<execution>
    						<id>unpacknatives</id>
    						<phase>generate-resources</phase>
    						<goals>
    							<goal>copy</goal>
    						</goals>
    					</execution>
    				</executions>
    			</plugin>
    			<plugin>
    				<groupId>org.apache.maven.plugins</groupId>
    				<artifactId>maven-jar-plugin</artifactId>
    				<version>2.3.2</version>
    				<configuration>
    					<archive>
    						<manifest>
    							<mainClass>${main.class}</mainClass>
    							<addClasspath>true</addClasspath>
    							<classpathPrefix>lib/</classpathPrefix>
    						</manifest>
    					</archive>
    				</configuration>
    			</plugin>
    			<plugin>
    				<artifactId>maven-assembly-plugin</artifactId>
    				<version>2.2.1</version>
    				<executions>
    					<execution>
    						<id>bundle-project-sources</id>
    						<phase>package</phase>
    						<goals>
    							<goal>single</goal>
    						</goals>
    						<configuration>
    							<descriptors>
    								<descriptor>src/META-INF/assembly.xml</descriptor>
    							</descriptors>
    						</configuration>
    					</execution>
    				</executions>
    			</plugin>
    		</plugins>
    	</build>
    4/clic droit sur le projet, maven>update project configuration

    et voila, ça devrait marcher.

    Adieu.

  4. #4
    Membre éprouvé

    Homme Profil pro
    Architecte technique
    Inscrit en
    Juin 2005
    Messages
    588
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2005
    Messages : 588
    Points : 1 230
    Points
    1 230
    Par défaut
    Citation Envoyé par Eildosa Voir le message
    Merci, tres utile et constructif.

    J'ai decouvert maven il y a moins de 24h et j'ai besoin de charger un librairie qui utilise des JNI, pas simple quand on debute, evidament j'ai deja lu les 20 premiere pages google, les forums etant mon dernier recours.


    Adieu.
    Tu préférais peut-être que quelqu'un te fasse un résumé d'un des liens cités sans avoir fait la manip ????

    L'étape 2 (installer ce plugin ecplipse) n'est à priori utile que pour M2E 1.x et la phase generate-resources.

    Le pom du premier lien Google est suffisant en ligne de commande et/ou M2E <=0.12: un pom se suffit à lui même... c'est à dire qu'il va aller chercher toutes les dépendances nécessaire au build !

Discussions similaires

  1. Réponses: 0
    Dernier message: 26/10/2009, 20h58
  2. Des div qui font ceux qu'ils veulent
    Par sacados1 dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 20/11/2007, 22h47
  3. [Icon] Librairie qui permet de faire des interfaces graphiques
    Par kespy13 dans le forum Autres langages
    Réponses: 1
    Dernier message: 25/10/2007, 18h25

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