2016-08-08 4 views
1

J'ai des problèmes avec la conversion de ma commande javac utilisée sous windows (mes bibliothèques sont placées dans le dossier lib, le code source dans le dossier src, et le code compilé doit être placé dans le dossier bin):convertir windows javac commande à linux

javac -cp lib/\* -d bin src/\*.java 

dans la commande linux javac correcte. J'ai essayé de nombreuses variantes, y compris

javac -cp lib/* -d bin src/*.java 

mais cela ne semble pas fonctionner:

"drapeau invalide: lib/org.eclipse.paho.client.mqttv3-1.0.2.jar ".

Je suis à la recherche d'une solution à cela déjà un certain temps, donc tout conseil à ce sujet serait grandement apprécié!

+0

En supposant que vous utilisez JDK7/8, exécutez-vous javac à partir de ce dossier? –

+0

Oui, j'utilise JDK8 et exécute les commandes dans le dossier qui a src, bin et lib en tant que sous-dossiers. La commande javac listée dans Windows fonctionne, je suis en train de chercher la commande similaire sous Linux. – PDB

+0

Cela devrait fonctionner correctement, sauf si vous avez plus d'arguments classpath que vous ne le faites. Dans ce cas, vous devrez changer tous vos ':' s en ';' s –

Répondre

0

Ceci est une de ces choses étranges qui se produit lorsque vous ne mettez pas de guillemets autour d'un argument.

Solution a travaillé dans la section des commentaires: "lib/" au lieu de lib/

javac -cp "lib/*" -d bin src/*.java 

L'autre problème était que ; est nécessaire au lieu de : sous Linux pour classpaths.