Qu'entendez-vous par "linker" ?
Le lundi, 23 sep 2002, � 17:46 Europe/Paris, s�bastien Layer a �crit : > le mieux, je pense, est de linker avec plusieurs jar de mani�res � > favoriser > la modularit�. Ainsi si l'une de tes lib est updat�, tu n'as plus qu'� > la > patcher, tu n'ai pas oblig� de relivrer l'ensemble des librairies. > C'est mon > point de vue. > > -----Message d'origine----- > De : Aurelien Mazurie [mailto:[EMAIL PROTECTED]] > Envoy� : lundi 23 septembre 2002 17:35 > � : [EMAIL PROTECTED] > Objet : Re: Classpath: suite > > > > Oui, le "gros" jar contiendrai les "petits" jar, pas leurs classes. Il > me semble que c'est possible, a priori ? Sinon, je peux toujours > demander � mon script Ant de d�compresser les .jar externes dans le > r�pertoire de build, et "jarrer" le tout. > > Quelqu'un sait si c'est vraiment moche d'inclure des jars dans un jar ? > > Aur�lien Mazurie > > Le lundi, 23 sep 2002, � 17:19 Europe/Paris, LAMY Olivier a �crit : > >> Question : >> Le "gros" Jar contient les autres Jars ou les classes de ces Jar ? >> De mon humble avis, la deuxi�me solution para�t �tre plus acceptable ! >> Car un jar qui contient d'autres Jar (je n'y crois que moyennement, >> cela dit >> pourquoi pas !) >> >> ----- Original Message ----- >> From: "Aurelien Mazurie" <[EMAIL PROTECTED]> >> To: <[EMAIL PROTECTED]> >> Sent: Monday, September 23, 2002 5:12 PM >> Subject: Classpath: suite >> >> >>> >>>> une piste : >>>> >>>> <path id="path.classpath"> >>>> <!--<pathelement location="${dir.extclass}/**/*.jar" />--> >>>> <fileset dir="${dir.extclass}" /> >>>> </path> >>>> >>>> o� ${dir.extclass} pointe vers le r�pertoire contenant les jars >>>> (chez >>>> moi �a >>>> marche) >>> >>> Ca marche ! Effectivement, mon erreur (para�t-il "classique", dans le >>> fichier o� j'ai lu �a) viens du fait que j'indique un r�pertoire de >>> .jar dans le classpath, au lien d'indiquer les .jar eux-m�me (qui >>> sont, >>> du point de vue de Java, des r�pertoires)... La directive "fileset" >>> sous Ant permet de reconstituer une liste de ces jars, et de les >>> injecter dans le classpath. Ouf ! >>> >>> Mais j'ai un autre probl�me maintenant =) >>> Une fois tout compil� (ca compile sans probl�mes), j'aimerai tout >>> mettre dans un .jar, pour n'avoir plus qu'un seul fichier � >>> manipuler. >>> Or, une fois cr�� le jar (je met tout dedans: les .class bien s�r, >>> mais >>> aussi les .jar des classes externes que j'utilise), � l'ex�cution il >>> ne >>> me retrouve pas une classe particuli�re (celle du JDBC MySQL), que >>> j'instancie comme �a: >>> >>> Class.forName("com.mysql.jdbc.Driver").newInstance(); >>> >>> Toutes les autres classes contenues dans les autres .jar (que >>> j'utilise >>> par un simple "import ...") semblent accessibles sans probl�mes (en >>> tout cas je n'ai pas d'erreur pour elles; peux-�tre l'erreur pour >>> mm.mysql masque-t'elle les autres en interrompant la compilation � ce >>> stade ?). >>> >>> Sauriez-vous comment instancier cette classe "com.mydsl.jdbc.Driver" >>> ? >>> >>> Aur�lien Mazurie >>> >>>> ----- Original Message ----- >>>> From: "Aurelien Mazurie" <[EMAIL PROTECTED]> >>>> To: <[EMAIL PROTECTED]> >>>> Sent: Monday, September 23, 2002 12:09 PM >>>> Subject: Classpath >>>> >>>> >>>>> >>>>> Je suis nul ! >>>>> Je sais, ca fait bizarre de commencer un e-mail avec cette >>>>> affirmation, mais je maintien: depuis le temps que je programme en >>>>> Java, je me suis toujours d�tach� des histoires de classpath en >>>>> faisant >>>>> un tour de passe-passe... >>>>> >>>>> Le probl�me est, j'imagine, tr�s simple pour vous tous; j'ai une >>>>> s�rie >>>>> de classes externes comprises dans des fichiers .jar, que - bien >>>>> s�r - >>>>> je veux appeller � partir de mon petit programme. Jusqu'� pr�sent, >>>>> je >>>>> me suis amus� � extraire l'arborescence de ces .jar dans mon >>>>> r�pertoire >>>>> contenant mes sources, et ainsi � la compilation il retrouvait tous >>>>> les >>>>> .class qu'il lui fallait. >>>>> >>>>> Mais bon, je me suis dis que ca ne faisait pas "pro", et en plus >>>>> c'�tait p�nible de devoir tout recommencer d�s lors qu'une nouvelle >>>>> version des librairies que j'importait en .jar sortait. D'o� ma >>>>> volont� >>>>> d'organiser mes fichiers comme �a: >>>>> >>>>> /build - r�pertoire o� javac s'amuse >>>>> /src - r�pertoire contenant UNIQUEMENT mes classes � moi >>>>> /classes - r�pertoire contenant les .jars dont je veux utiliser les >>>>> classes >>>>> >>>>> Comme j'aime bien Ant, j'ai essay� de modifier mon petit build.xml >>>>> pour prendre en compte le r�pertoire /classes dans le CLASSPATH. Le >>>>> probl�me c'est que je n'arrive pas � lui faire entendre raison... >>>>> Pff... Voil� mon fichier: >>>>> >>>>> <project name="MyProject" default="compile" basedir="."> >>>>> >>>>> <property name="dir.source" value="src" /> >>>>> <property name="dir.build" value="build" /> >>>>> <property name="dir.extclass" value="classes" /> >>>>> >>>>> <path id="path.classpath"> >>>>> <pathelement location="${dir.extclass}/**/*.jar" /> >>>>> </path> >>>>> >>>>> <!-- Initialisation: creation du repertoire de destination --> >>>>> <target name="init"> >>>>> <tstamp/> >>>>> <mkdir dir="${dir.build}" /> >>>>> </target> >>>>> >>>>> <!-- Compilation --> >>>>> <target name="compile" depends="init"> >>>>> <javac srcdir="${dir.source}" destdir="${dir.build}"> >>>>> <classpath refid="path.classpath" /> >>>>> </javac> >>>>> </target> >>>>> >>>>> </project> >>>>> >>>>> Quelqu'un saurait me dire o� je me trompe ? A la compilation, il me >>>>> trouve toutes mes classes � moi (encore heureux...), mais bien s�r >>>>> aucune de celles incluses dans les fichiers classes/*.jar >>>>> >>>>> Ouin ! (snif) >>>>> >>>>> Aur�lien Mazurie >>>> >> >> >> >> ********************************************************************** >> Ce message �lectronique et tous les fichiers joints ainsi que les >> informations contenues dans ce message (ci apr�s "le message"), sont >> confidentiels et destin�s exclusivement � l'usage de la personne � >> laquelle >> ils sont adress�s. Si vous avez re�u ce message par erreur, merci de >> le >> renvoyer � son �metteur et de le d�truire. Toute diffusion, >> publication, >> totale ou partielle ou divulgation sous quelque forme que ce soit non >> express�ment autoris�es de ce message, sont interdites. >> >> ********************************************************************** >> This e-mail, any attachments and the information contained (herein " >> the >> message") are confidential and intended solely for the use of the >> addressee(s) if you have received this message in error please send it >> back >> to the sender and delete it. Unauthorized publication, use, >> dissemination or >> disclosure, either whole or partial, of this message is strictly >> prohibited. >> > >
