Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1

    [java] javax.vecmath.Matrix3f (come importarlo?)

    Ho bisogno di usare la classe Matrix3f all'interno del pacchetto javax.vecmath (link alla sua documentazione).

    Quando però nel mio codice java metto il comando
    codice:
    import javax.vecmath.Matrix3f;
    se compilo il file mi dice che tale pacchetto non esiste.

    Ho jdk 1.4.1 quindi non dovrebbe essere un problema di versione obsoleta. Forse devo scaricare il pacchetto e inserirlo esplicitamente?

  2. #2
    Utente di HTML.it L'avatar di Angelo1974
    Registrato dal
    Feb 2003
    Messaggi
    1,107
    Ciao; ma hai aggiunto il jar contenente questa classe all'interno del tuo classpath?
    Se vuoi trovare l'arcobaleno, devi sopportare la pioggia

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    328
    credo che tu debba scaricare questo:

    https://java3d.dev.java.net/binary-builds.html


    ed includere poi i jar nel CLASSPATH
    Il programmatore lo vedi dal coraggio, dall'altruismo, dalla fantasia...

  4. #4
    Grazie degli aiuti!

    Scusate l'ignoranza ma non mi era mai capitato di usare classi che non fossero già contenute nell'istallazione di default di sdk1.4.1.

    Ma allora, la prossima volta che avessi bisogno di un pacchetto, come trovo i file jar corrispondenti? Ad esempio nella documentazione della classe Matrix3f non ci sono link ai file.

  5. #5
    Ho messo i file jar in directory del path. Per vedere se tutto funziona ho provato a creare un semplice file che crea un oggetto di tipo Matrix3f:

    codice:
    import javax.vecmath.*;
    
    class Prova {
    	public static void main(String[] args) {
    		Matrix3f matrice= new Matrix3f();
    	}
    }
    Riesco a compilarlo ma al momento dell'esecuzione mi da il seguente errore:
    codice:
    Exception in thread "main" java.lang.NoClassDefFoundError: javax/vecmath/Matrix3d
    	at Prova.main(Prova.java:8)
    Normal Termination
    Output completed (1 sec consumed).

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    328
    Originariamente inviato da Pablob

    ed includere poi i jar nel CLASSPATH

    CLASSPATH


    Edit:
    ripensandoci, se non avessi i jar nel CLASSPATH non riusciresti a compilare... :master:

    Edit (2):
    C'è qualcosa che non torna... Dice che non trova Matrix3d ma tu hai compilato con Matrix3f... Non hai due classi Prova per caso? Una che usa Matrix3d e una che usa Matrix3f?
    Il programmatore lo vedi dal coraggio, dall'altruismo, dalla fantasia...

  7. #7
    Si hai ragione ho sbagliato a postare l'errore. L'errore giusto è con la "f" quindi:

    codice:
    Exception in thread "main" java.lang.NoClassDefFoundError: javax/vecmath/Matrix3f
    	at Prova.main(Prova.java:8)
    Normal Termination
    Scusami del malinteso.

  8. #8
    Mi sono letto un po di thread di questo forum per capire cosa fosse il classpath. Quindi ho aggiunto la variabile d'ambiente CLASSPATH con l'indirizzo dove ho i file jar.

    Ora mi da il seguente errore:
    codice:
    java.lang.NoClassDefFoundError: Prova
    Exception in thread "main"

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    328
    Dunque,

    se hai dei jar, il CLASSPATH deve puntare il jar (es: c:\directory\file.jar).

    Se invece la struttura è "scompattata", deve puntare alla directory di partenza dei package (es: c:\directory\mypackage, dove my package è la radice dei package. Quindi se hai un package pippo, la directory sarà c:\directory\mypackage\pippo).

    Se la classe Prova non fa parte di alcun package, deve stare FUORI dal percorso dei package (per esempio, su c:\directory\mypackage).

    HTH
    Il programmatore lo vedi dal coraggio, dall'altruismo, dalla fantasia...

  10. #10
    Ok ho corretto il CLASSPATH (l'indirizzo è impostato su C:\Programmi\Java\jdk1.5.0_03\jre\lib\ext\vecmath. jar visto che il file è vecmath.jar).

    Cosa devo dichiarare adesso all'inizio del codice java? Se metto
    codice:
    import javax.vecmath.Matrix3f;
    mi da il solito errore:

    codice:
    java.lang.NoClassDefFoundError: Prova
    Exception in thread "main"

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 © 2024 vBulletin Solutions, Inc. All rights reserved.