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

NetBeans Java Discussion :

Eviter la recopie des fichiers .jar dans les répertoires dist/lib


Sujet :

NetBeans Java

  1. #1
    Membre à l'essai
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Septembre 2016
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Chercheur en informatique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 20
    Points : 11
    Points
    11
    Par défaut Eviter la recopie des fichiers .jar dans les répertoires dist/lib
    Bonjour

    J'ai un souci. Une application décomposée en plusieurs projets / packages. A la base, par exemple, le projet "utilitaires". Au dessus, des projets p1, p2, etc.
    Je fais un clean/build du projet "utilitaires" et il me crée dans ce projet un répertoire "dist" où il met le fichier "utilitaires.jar". Jusqu'ici OK.

    Maintenant je fais un clean/build du projet p1, et dans le menu "run/set_project_configuration/customize", à l'onglet "lib", je déclare une librairie (ou bien un jar/folder) pointant sur mon fichier "utilitaires.jar". Je constate qu'au build il me crée un répertoire "lib" dans le répertoire "dist" du projet p1 et y recopie le fichier "utilitaires.jar".

    C'est une source d'embrouilles, car si plus tard je refais le build du projet "utilitaires", il ne recopie pas son fichier jar dans les projets p1, p2, etc, et je me retrouve avec des erreurs dues à plusieurs versions du "utilitaires.jar" dans les divers projets, non compatibles avec le nouveau "utilitaires.jar" dans le répertoire "dist" du projet "utilitaires".

    Comment faire pour que la désignation d'un "jar-folder" au "customize" du "run", travaille par référence et non par recopie du .jar ?

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    tu as essayé en faisant de projet type maven? Il ne devrait pas y avoir de recopie dans ceux là, puisque c'est maven qui centralise les binaires.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Septembre 2016
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Chercheur en informatique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    Petit projet test avec Maven... oups, il importe je ne sais quel "repositery index" pendant une heure ! J'espérais un peu qu'avec Maven je pourrais faire des "nested packages", pour structurer mes projets, mais non : des packages tels que test1 et test1.sousTestA sont vus en mode "flat" dans la hiérarchie du projet. Peut être que c'est une contrainte java tout simplement.

    Donc en admettant que je fasse un seul projet au lieu de cinq actuellement, et que j'utilise des packages avec une (fausse) hiérarchie type test1 et test1.sousTestA, je n'aurai alors qu'un seul .jar, ou même pas de .jar du tout dans la phase développement. En final, une fois le projet terminé et opérationnel, je pourrai le redécouper en plusieurs projets pour pouvoir distribuer mes fonctions sous forme de modules avec les .jar. Tous le même numéro de version, donc si l'un évolue, je les fais tous évoluer.

    J'hésite : basculer sous Maven, avec le temps d'apprentissage nécessaire, ou employer l'approche naïve comme décrit ci-dessus. Retour d'expérience ?

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par JiPe38 Voir le message
    Petit projet test avec Maven... oups, il importe je ne sais quel "repositery index" pendant une heure ! J'espérais un peu qu'avec Maven je pourrais faire des "nested packages", pour structurer mes projets, mais non : des packages tels que test1 et test1.sousTestA sont vus en mode "flat" dans la hiérarchie du projet. Peut être que c'est une contrainte java tout simplement.
    L'index, c'est juste netbeans qui veut être plus catholique que le pape, ce n'est en général pas nécessaire, sauf si tu veux faire de l'autocompletion quand tu rajoutes des dépendances (genre savoir que apache commons dispose de 15 versions différentes nomérotées 1.0, 1.1, 1.2, 1.2.1, 1.2.3). Tu peux normalement le désactiver dans les options. C'est le même problème sur eclipse, l'index met 1h à télécharger. Le serveur où il est hébergé le livrant à 5K/s.

    Pour cette histoire de flat, je ne sais pas trop de quoi tu parles. Si tu parles de la présentation des packages dans un projet, c'est une option de netbeans, rien à voir avec java ou maven. Maven supporte très bien la hierarchisation des projets en combinant les dépendances (qui a besoin de quoi) et les modules (raccourcis pour builder plein de trucs d'un coup). La manière dont netbeans présente ça importe peu. Eclipse par exemple présent chaque projet côte à côte car il n'a aucune notion de netsted project. Ca ne l'empêche pas de savoir qu'il y a des dépendances entre les projet et de gérer correctement les classpaths entre les projets.

    http://books.sonatype.com/mvnex-book...ltimodule.html

    Citation Envoyé par JiPe38 Voir le message
    Retour d'expérience ?
    Maven s'apprend très vite, en quelque heures pour les opérations de base (build, dépendances, commandes). Ce qui prends du temps ce sont les trucs un peu plus complexe, genre quand il faut faire dialoguer 2 plugins entre eux alors qu'ils sont pas fait pour, ou quand il faut gérer le legacy.

    Maven ne t'oblige pas à release tous tes modules dans la même version (même si c'est plus pratique)

  5. #5
    Membre à l'essai
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Septembre 2016
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Chercheur en informatique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    Lecture du fichier tuto Maven proposé... remontée à la racine du tuto, oups... un week end en perspective ! Parcouru en diagonale : effectivement Maven semble intéressant.

    Pour l'instant, j'ai trouvé une solution provisoire. Mes ennuis venaient du fait que j'avais une dépendance croisée : le projet p1 dépendait de p2 et p2 dépendait de p1. En fait, la logique était de fusionner ces deux projets. Une fois fait, plus de souci... pour l'instant.

    Mais je retiens Maven pour une phase ultérieure du développement et du déploiement, surtout que j'envisage de porter sur un serveur web, alors...
    Merci pour le coup de main.

  6. #6
    Membre émérite
    Avatar de Mickael_Istria
    Homme Profil pro
    Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Inscrit en
    Juillet 2008
    Messages
    1 469
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 469
    Points : 2 997
    Points
    2 997
    Par défaut
    Eclipse par exemple présent chaque projet côte à côte car il n'a aucune notion de netsted project.
    C'est laisse a la discretion de l'utilisateur depuis plus de 2 ans: https://www.eclipse.org/mars/notewor...ew_of_projects
    Pour du HTML, CSS, JavaScript, TypeScript, JSon, Yaml, Node... dans Eclipse IDE, installe Eclipse Wild Web Developer
    Pour du Rust dans Eclipse IDE, installe Eclipse Corrosion
    Follow me on twitter

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    mais pourquoi c'est toujours planqué dans un sous menu dans eclipse

  8. #8
    Membre émérite
    Avatar de Mickael_Istria
    Homme Profil pro
    Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Inscrit en
    Juillet 2008
    Messages
    1 469
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 469
    Points : 2 997
    Points
    2 997
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    mais pourquoi c'est toujours planqué dans un sous menu dans eclipse
    Il faut lire les N&N. Mais si tu as une meilleure suggestion pour rendre ca plus accessible, bugs.eclispe.org
    Pour du HTML, CSS, JavaScript, TypeScript, JSon, Yaml, Node... dans Eclipse IDE, installe Eclipse Wild Web Developer
    Pour du Rust dans Eclipse IDE, installe Eclipse Corrosion
    Follow me on twitter

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 19/01/2017, 20h16
  2. Réponses: 9
    Dernier message: 21/04/2011, 09h32
  3. Réponses: 4
    Dernier message: 12/10/2009, 17h55
  4. Réponses: 2
    Dernier message: 01/04/2009, 13h54
  5. Lister des fichiers contenus dans un répertoire
    Par mithrendil dans le forum Langage
    Réponses: 5
    Dernier message: 01/05/2007, 09h27

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