Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    Lanciare .java da riga di comando

    Buongiorno,
    Ho necessità di lanciare un file .java da riga di comando. Ho creato il mio programmino con eclipse che scrive su una tabella di mysql.
    Prendo il file .java e lo metto dentro alla cartella di Jdk e lo compilo con il seguente comando:
    javac QueryClass.java
    A questo punto mi crea il file QueryClass.class
    Lancio l'applicazione con il comando: java QueryClass.
    Qui arriva il problema
    Mi esce fuori la seguente riga:
    com.mysql.jdbc.driver
    credo che voglia dire che non trova il .jar del connector/j
    La variabile di ambiente CLASSPATH l'ho settata attraverso il pannello di controllo con il percorso dove il jar si trova (secondo me però sbaglio qualcosa qua).
    Avete qualche suggerimento?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Lanciare .java da riga di comando

    Originariamente inviato da tigrevikinga
    Ho necessità di lanciare un file .java da riga di comando.
    Già detto così ha poco senso ....

    Originariamente inviato da tigrevikinga
    Prendo il file .java e lo metto dentro alla cartella di Jdk
    Non sei mica obbligato (e anzi ... non dovresti nemmeno) metterlo nella cartella del JDK.

    Originariamente inviato da tigrevikinga
    javac QueryClass.java
    A questo punto mi crea il file QueryClass.class
    Lancio l'applicazione con il comando: java QueryClass
    Ok

    Originariamente inviato da tigrevikinga
    Qui arriva il problema
    Mi esce fuori la seguente riga:
    com.mysql.jdbc.driver
    credo che voglia dire che non trova il .jar del connector/j
    Appunto.

    Originariamente inviato da tigrevikinga
    La variabile di ambiente CLASSPATH l'ho settata attraverso il pannello di controllo con il percorso dove il jar si trova (secondo me però sbaglio qualcosa qua).
    Giusto per precisare ... non devi mettere in CLASSPATH solo la directory che contiene quel jar .... ma proprio anche il nome del jar!!!

    Comunque posta qui cosa ottieni facendo dal prompt: echo %CLASSPATH%
    (supponendo che stai usando Windows)
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Hai ragione e scusami della mia ignoranza!!!

    Come faccio direttamente a compilare un file .java nella cartella sua originale?
    Ho scritto il comando echo %CLASSPATH% ma non succede nulla.....vuol dire mica che non ho settato nulla???

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da tigrevikinga
    Come faccio direttamente a compilare un file .java nella cartella sua originale?
    Innanzitutto metti in PATH il path completo alla directory 'bin' del JDK. Così usi semplicemente "javac", "java" ecc... dovunque ti trovi come directory corrente.

    Originariamente inviato da tigrevikinga
    Ho scritto il comando echo %CLASSPATH% ma non succede nulla.....vuol dire mica che non ho settato nulla???
    Non è che per caso hai fatto la modifica dopo che hai aperto il prompt dei comandi?? Riapri il prompt.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Sinceramente trovo il tuo approccio disordinato.
    Agli inizi io creavo i programmi con il blocco notes ed usavo il compilatore a riga di comando da console.
    Poi, una volta capito il funzionamento, sono passato ad Eclipse e compilavo i programmi da là.

    Tu scrivi il codice con Eclipse e poi lo vuoi compilare col javac (senza contare che sposti il file .java nella cartella del jdk, una cosa disordinata al massimo!)...non ti sembra un approccio incasinato?
    Cmq per risolvere il problema del ConnectorJ il modo più semplice è quello di mettere il file mysql-connector-java-3.1.8-bin.jar nella cartella jdk/jre/lib/ext
    Gutta cavat lapidem
    [La goccia scava la pietra]
    ***
    (Ovidio)

  6. #6
    Questo è il contenuto del mio CLASSPATH

    C:\Users\Alessandro\Documents\Università\Architett ura del software\Eclipse\mysql-connector-java-5.1.7\mysql-connector-java-5.1.7-bin.jar

  7. #7
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da tigrevikinga
    Questo è il contenuto del mio CLASSPATH

    C:\Users\Alessandro\Documents\Università\Architett ura del software\Eclipse\mysql-connector-java-5.1.7\mysql-connector-java-5.1.7-bin.jar
    Tecnicamente è corretto. Comunque aggiungi anche la directory corrente ".", quindi .;C:\Users\Alessa.....
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  8. #8
    Avete ragione.....cercate di capirmi

    C:\Program Files\Java\jdk1.6.0_05\bin>javac HelloWordApp.java

    C:\Program Files\Java\jdk1.6.0_05\bin>java HelloWordApp
    Exception in thread "main" java.lang.NoClassDefFoundError: HelloWordApp
    Caused by: java.lang.ClassNotFoundException: HelloWordApp
    at java.net.URLClassLoader$1.run(URLClassLoader.java: 200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.j ava:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:3 06)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launche r.java:276)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:2 51)
    at java.lang.ClassLoader.loadClassInternal(ClassLoade r.java:319)

    Cavolo....prima funzionava!!!!!!!!
    Ho solo aggiunto alla variabile di ambiente PATH il percorso completo alla directory 'bin' del JDK

  9. #9
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da tigrevikinga
    C:\Program Files\Java\jdk1.6.0_05\bin>javac HelloWordApp.java

    C:\Program Files\Java\jdk1.6.0_05\bin>java HelloWordApp
    Exception in thread "main" java.lang.NoClassDefFoundError: HelloWordApp
    Caused by: java.lang.ClassNotFoundException: HelloWordApp
    Ripeto ancora una volta:
    - Path completo della 'bin' del JDK in PATH
    - CLASSPATH che contiene almeno la directory corrente "." più qualunque altro riferimento a jar esterni o directory dove si trovano classi specifiche.

    Quindi apri il prompt e non avrai problemi!!!
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  10. #10
    Hai veramente una pazienza infinita.....Ti ringrazio del tuo aiuto!
    Sono riuscito a fare tutto
    Buona giornata e grazie ancora

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.