riuso progetto java/javaswing

Discussione in 'Java' iniziata da ariannaari, 19 Febbraio 2013.

  1. ariannaari

    ariannaari Nuovo Utente

    Registrato:
    28 Settembre 2010
    Messaggi:
    22
    Mi Piace Ricevuti:
    10
    Punteggio:
    0
    Buongiorno ragazzi... sono giorni che cerco di capire cosa e come devo fare per far funzionare il progetto di un'applicazione, fatta dai miei colleghi di università, sul mio pc.
    E' un progetto d'esame svolto come lavoro di gruppo, in cui l'implementazione poi era individuale. E' un'applicazione rubrica in cui io devo creare la funzione ricerca. Ora il problema è:
    come faccio a far girare l'applicazione da loro creata sul mio pc?
    la cartella del progetto contiene:
    -cartella .svn
    -cartella build
    -cartella dist
    -cartella nbprojec
    -cartella src
    -cartella test
    -file build.xml
    -file bild-before-profiler.xml
    -file db.text
    -file manifest.mf

    Ho letto che l'eseguibile è il file .jar nella cartella dist, ma se io ci clicco non succede nulla.
    Come faccio ad eseguire questo file?

    Sto proprio in altissimo mare!
     
    A ottofonsuppost piace questo elemento.
  2. andre9004

    andre9004 Utente Attivo

    Registrato:
    15 Marzo 2012
    Messaggi:
    104
    Mi Piace Ricevuti:
    1
    Punteggio:
    0
    Occupazione:
    Studente
    Località:
    Lombardia
    che programma hanno usato per il progetto? eclipse?
     
    A ottofonsuppost piace questo elemento.
  3. ariannaari

    ariannaari Nuovo Utente

    Registrato:
    28 Settembre 2010
    Messaggi:
    22
    Mi Piace Ricevuti:
    10
    Punteggio:
    0
    Molto probabilmente netbeans!
    Il problema sta sicuramente tutto nella mia ignoranza! Nella cartella di progetto vedo anche file xml...e allora mi domando: è possibile che tramite browser visualizzino l'interfaccia grafica di questa applicazione?
    Purtroppo non sono più in contatto con questi miei colleghi, quindi non posso chiedere loro una mano.
    Tra l'altro hanno costruito un progetto sul progetto di altri e quindi reinterpretare il codice, o meglio la struttura dell'applicazione, è un casino.

    Ho caricato il progetto su netbeans e mandato in run la main class, ma mi individua vari errori (assenza della libreria toplink ed errori vari):

    Exception in thread "main" java.lang.NullPointerException
    at control.CImmagini.<init>(CImmagini.java:65)
    at control.CImmagini.istanza(CImmagini.java:75)
    at control.CStartup.main(CStartup.java:35)
    Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    at control.CImmagini.<init>(CImmagini.java:65)
    at control.CImmagini.istanza(CImmagini.java:75)
    at presentation.componenti.backgroundedFittedLayeredPane.<init>(backgroundedFittedLayeredPane.java:24)
    at presentation.PMAIN.<init>(PMAIN.java:56)
    at control.CStartup$1.run(CStartup.java:28)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:721)
    at java.awt.EventQueue.access$200(EventQueue.java:103)
    at java.awt.EventQueue$3.run(EventQueue.java:682)
    at java.awt.EventQueue$3.run(EventQueue.java:680)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:691)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)
    Java Result: 1
    BUILD SUCCESSFUL (total time: 3 seconds)
    E ovviamente non mi si apre nulla.

    Solo che, dico io, se una persona mi passa un progetto già funzionante, sul quale ha svolto un esame, non dovrebbe funzionare anche a me?

    Grazie comunque per la tua collaborazione! :D
     
    A ottofonsuppost piace questo elemento.
  4. Slyfer

    Slyfer Utente Attivo

    Registrato:
    4 Dicembre 2010
    Messaggi:
    65
    Mi Piace Ricevuti:
    21
    Punteggio:
    0
    Ciao, non è così scontato.

    Quando si crea un progetto in un qualsiasi IDE (Eclipse, Netbeans) ci sono delle configurazioni che non sono portabili da pc a pc, faccio un esempio (penso che sia anche il tuo problema)

    Se io ho il progetto nella dir C:/pippo/pluto e ho le librerie in C:/pippo/pluto/lib, se passo il progetto a te e tu lo metti in C:/paperino/pluto, tutti i riferimenti al classpath vanno a farsi benedire.....

    Per questo motivo bisogna condividere solo i sorgenti e le librerie, non i file di progetto (es directory nbproject, dist, etc) e scrivere un README che spiega come fare a configurare il progetto (importa java project, definisci il classpath, etc)

    Se alleghi il progetto vedo di farlo funzionare da me e ti dico cosa ho fatto.

    Altra cosa, ho visto che c'è una directory di svn, su repo non committate .class e le directory dist e nbproject, perchè per quello che spiegavo prima, ognuno ha una sua configurazione e NON deve essere condivisa, altrimenti se fai un commit delle tue impostazioni e un altro fa update non gli funziona più una fava.

    Spero di esserti stato di aiuto

    ciao
     
    A ottofonsuppost piace questo elemento.
  5. ariannaari

    ariannaari Nuovo Utente

    Registrato:
    28 Settembre 2010
    Messaggi:
    22
    Mi Piace Ricevuti:
    10
    Punteggio:
    0
    Ti dò il link dove è salvato. Prendi: progetto federico.

    http://federicocinque.altervista.org/ary/

    Grazie davvero! Ho capito... forse ci sarà qualche percorso relativo errato, boh! Spero riuscirai a trovare qualcosa! Grazieeeeee 0:)0:)0:)
     
    A ottofonsuppost piace questo elemento.
  6. Slyfer

    Slyfer Utente Attivo

    Registrato:
    4 Dicembre 2010
    Messaggi:
    65
    Mi Piace Ricevuti:
    21
    Punteggio:
    0
    Ciao sono riuscito a farlo funzionare sul mio pc (almeno mi è comparsa l'interfaccia).

    Ti spiego come ho fatto:

    1) Scaricato netbeans jee
    2) Installato (installando anche JUnit è importante)
    3) Scompattato il rar e fatto Open Project
    4) Mi compare un warning riguardo toplink
    5) Scaricato installer librerie toplink qui
    6) Da un'altra finestra ho spostato il jar di top link nella root del progetto e lanciato java -jar glassfish-persistence-installer-v2ur1-b09d.jar
    7) Da netbeans ho fatto resolve, new library chiamata toplink, poi addjars ho fatto sfoglia e incluso i jar appena creati dall'installer

    Detto questo il progetto funziona (almeno compila). Ho dovuto fare una modifica alla classe CImmagini modificando la linea 61 da

    File f = new File(this.getClass().getResource("/presentation/icone").toString().substring(6));
    a
    File f = new File(this.getClass().getResource("/presentation/icone").getFile());

    Detto questo funziona. Ti allego un paio di screenshot sulle operazioni e\o avvisi

    Fammi sapere

    ciao
     

    Files Allegati:

    A ottofonsuppost piace questo elemento.
  7. ariannaari

    ariannaari Nuovo Utente

    Registrato:
    28 Settembre 2010
    Messaggi:
    22
    Mi Piace Ricevuti:
    10
    Punteggio:
    0
    Allora... prima di installare la tua stessa versione di Netbeans provo a fare quello che hai fatto con la mia...anche se non so se ho JUnit...comunque ho cancellato il vecchio progetto, ma non riesco proprio ad aprire il progetto tramite OpenProject. Strano!
    E di conseguenza non mi appare più neanche il warning su toplink! Provo a installare l'altra versione va! Ti faccio sapere quanto prima!
    Grazie davvero comunque!
     
    A ottofonsuppost piace questo elemento.
  8. ariannaari

    ariannaari Nuovo Utente

    Registrato:
    28 Settembre 2010
    Messaggi:
    22
    Mi Piace Ricevuti:
    10
    Punteggio:
    0
    Innanzitutto davvero grazie. Allora ho riscaricato la versione nuova di Netbeans 7.3, ho incluso JUnit, mi ha fatto anche aggiornare JDK alla versione 7, ho seguito tutti i passi da te indicati ed ho fatto tutto così come hai fatto tu negli screenshot... quindi ho risolto il problema della mancanza della libreria, infine ho campbiato la riga 61 di CImmagini come mi hai detto tu.

    Ora, vado a fare tasto destro sul progetto e metto run e mi appare:

    init:
    Deleting: C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\build\built-jar.properties
    deps-jar:
    Updating property file: C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\build\built-jar.properties
    compile:
    run:
    Exception in thread "main" java.lang.NullPointerException
    at control.CImmagini.<init>(CImmagini.java:65)
    at control.CImmagini.istanza(CImmagini.java:75)
    at control.CStartup.main(CStartup.java:35)
    Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    at control.CImmagini.<init>(CImmagini.java:65)
    at control.CImmagini.istanza(CImmagini.java:75)
    at presentation.componenti.backgroundedFittedLayeredPane.<init>(backgroundedFittedLayeredPane.java:24)
    at presentation.PMAIN.<init>(PMAIN.java:57)
    at control.CStartup$1.run(CStartup.java:28)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:727)
    at java.awt.EventQueue.access$200(EventQueue.java:103)
    at java.awt.EventQueue$3.run(EventQueue.java:688)
    at java.awt.EventQueue$3.run(EventQueue.java:686)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:697)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
    Java Result: 1
    BUILD SUCCESSFUL (total time: 9 seconds)

    E comunque soprattutto... NIENTE INTERFACCIA!:crying: :crying:
    Cosa diavolo sbaglio? Manca qualcosa al mio pc? booooh
     
    A ottofonsuppost piace questo elemento.
  9. Slyfer

    Slyfer Utente Attivo

    Registrato:
    4 Dicembre 2010
    Messaggi:
    65
    Mi Piace Ricevuti:
    21
    Punteggio:
    0
    Sei sicura di aver cambiato il codice con il mio? Perchè quello è l'errore che ti dava con il vecchio codice....

    Prova rifare la build, se non funziona metti questo prima della linea 65 e posta il risultato:

    System.out.println(f.getAbsolutePath());

    ciao
     
    A ottofonsuppost piace questo elemento.
  10. ariannaari

    ariannaari Nuovo Utente

    Registrato:
    28 Settembre 2010
    Messaggi:
    22
    Mi Piace Ricevuti:
    10
    Punteggio:
    0
    Purtroppo sì, avevo fatto già la modifica. Comunque ho rifatto il copia e incolla dell'instruzione scritta da te ed ecco il risultato del build:


    ant -f "C:\\Users\\arianna mazzocchetti\\Desktop\\Sist Elab Info 1\\PROGETTI DEGLI ALTRI\\rubrica_federico\\rubrica_federico" jar
    init:
    Deleting: C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\build\built-jar.properties
    deps-jar:
    Updating property file: C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\build\built-jar.properties
    Compiling 1 source file to C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\build\classes
    compile:
    Copying 1 file to C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\build
    Copy libraries to C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\dist\lib.
    Building jar: C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\dist\Rubrica.jar
    To run this application from the command line without Ant, try:
    java -jar "C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\dist\Rubrica.jar"
    jar:
    BUILD SUCCESSFUL (total time: 5 seconds)


    Ora ho aggiunto la riga prima della 65, ho fatto il build:


    ant -f "C:\\Users\\arianna mazzocchetti\\Desktop\\Sist Elab Info 1\\PROGETTI DEGLI ALTRI\\rubrica_federico\\rubrica_federico" jar
    init:
    Deleting: C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\build\built-jar.properties
    deps-jar:
    Updating property file: C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\build\built-jar.properties
    Compiling 1 source file to C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\build\classes
    compile:
    Copying 1 file to C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\build
    Copy libraries to C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\dist\lib.
    Building jar: C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\dist\Rubrica.jar
    To run this application from the command line without Ant, try:
    java -jar "C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\dist\Rubrica.jar"
    jar:
    BUILD SUCCESSFUL (total time: 0 seconds)


    E dopo ho fatto il run ed ecco il risultato!

    ant -f "C:\\Users\\arianna mazzocchetti\\Desktop\\Sist Elab Info 1\\PROGETTI DEGLI ALTRI\\rubrica_federico\\rubrica_federico" run
    init:
    Deleting: C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\build\built-jar.properties
    deps-jar:
    Updating property file: C:\Users\arianna mazzocchetti\Desktop\Sist Elab Info 1\PROGETTI DEGLI ALTRI\rubrica_federico\rubrica_federico\build\built-jar.properties
    compile:
    run:
    C:\Users\arianna%20mazzocchetti\Desktop\Sist%20Elab%20Info%201\PROGETTI%20DEGLI%20ALTRI\rubrica_federico\rubrica_federico\build\classes\presentation\icone
    Exception in thread "main" java.lang.NullPointerException
    at control.CImmagini.<init>(CImmagini.java:65)
    at control.CImmagini.istanza(CImmagini.java:75)
    at control.CStartup.main(CStartup.java:35)
    Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    C:\Users\arianna%20mazzocchetti\Desktop\Sist%20Elab%20Info%201\PROGETTI%20DEGLI%20ALTRI\rubrica_federico\rubrica_federico\build\classes\presentation\icone
    at control.CImmagini.<init>(CImmagini.java:65)
    at control.CImmagini.istanza(CImmagini.java:75)
    at presentation.componenti.backgroundedFittedLayeredPane.<init>(backgroundedFittedLayeredPane.java:24)
    at presentation.PMAIN.<init>(PMAIN.java:57)
    at control.CStartup$1.run(CStartup.java:28)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:727)
    at java.awt.EventQueue.access$200(EventQueue.java:103)
    at java.awt.EventQueue$3.run(EventQueue.java:688)
    at java.awt.EventQueue$3.run(EventQueue.java:686)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:697)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
    Java Result: 1
    BUILD SUCCESSFUL (total time: 1 second)

    Grazie davvero per tutto comunque! 0:)
     
    A ottofonsuppost piace questo elemento.
  11. Slyfer

    Slyfer Utente Attivo

    Registrato:
    4 Dicembre 2010
    Messaggi:
    65
    Mi Piace Ricevuti:
    21
    Punteggio:
    0
    Ciao, il path del file è

    "C:\Users\arianna%20mazzocchetti\Desktop\Sist%20Ela b%20Info%201\PROGETTI%20DEGLI%20ALTRI\rubrica_fede rico\rubrica_federico\build\classes\presentation\i cone"

    Ma secondo me dovrebbe essere:

    "C:\Users\arianna%20mazzocchetti\Desktop\Sist%20Ela b%20Info%201\PROGETTI%20DEGLI%20ALTRI\rubrica_fede rico\rubrica_federico\build\classes\presentation\icone"

    praticamente senza spazio su "presentation\i cone" -> "presentation\icone".

    Puoi controllare il codice per vedere se non c'è uno spazio di troppo? Altra cosa, la directory "C:\Users\arianna%20mazzocchetti\Desktop\Sist%20Ela b%20Info%201\PROGETTI%20DEGLI%20ALTRI\rubrica_fede rico\rubrica_federico\build\classes\presentation\icone" esiste?

    Se tutto esiste ma continua a non funzionare metti tutto in un path senza spazi es "C:\rubrica_federico", diciamo che non è buona norma avere gli spazi nei nomi dei file.

    Fammi sapere

    ciao
     
    A ottofonsuppost piace questo elemento.
  12. ottofonsuppost

    ottofonsuppost Utente Attivo

    Registrato:
    10 Maggio 2016
    Messaggi:
    170
    Mi Piace Ricevuti:
    13
    Punteggio:
    18
    il solito errore dei principianti o degli pseudo programmatori: si pretende di maneggiare un linguaggio di programmazione senza conoscere come funziona il linguaggio. Qui abbiamo il caso di una utente che vuole "riciclare" un programma fatto in passato, da altri e si accorge che escono fuori errori a mitraglia; perchè non si comprende che in passato esistevano versioni JAVA differenti, non si comprende che le risorse venivano ubicate in un apposito pc con tanto di percorso da seguire da parte del CODICE, eccetera. Sappiamo che JAVA consente utilizzando un semplice BYTECODE di essere eseguito in qualsiasi VIRTUAL MACHINE di qualsiasi dispositivo, anche di un elettrodomestico.
    Eccovi il link di un corso per neofiti, pubblicato in questo spettabile FORUM:

    http://forum.mrwebmaster.it/threads...guerra-a-java-corso-gratis-per-neofiti.45758/

    Ottofonsuppost e la grande guerra a JAVA - Corso GRATIS per neofiti

    Capire cosa fa JAVA è il primo passo per armeggiare con il LINGUAGGIO JAVA. Spesso gli utenti credono di sapere utilizzare JAVA, ne scrivono correttamente addirittura il codice, ma non sanno che cosa fa JAVA, e come lo fa. Esistono docenti che insegnano ogni giorno il LINGUAGGIO JAVA, ma non saprebbero come risolvere un problema in un programma appena da loro scritto, problema sfornato durante la fase di esecuzione, perchè non hanno mai capito COME FUNZIONA JAVA.
    Uno degli errori più frequenti dei neofiti è abbandonarsi all'uso della PROGRAMMAZIONE VISUALE, tanto bella e capace di scrivere codice al nostro posto, ma essi non sanno nulla di JAVA; credono di sapere scrivere in JAVA, mentre sono ignoranti di JAVA allo stato puro. Per questo sconsiglio sempre di utilizzare la programmazione visuale, all'inizio. La programmazione visuale, per componenti è il modo migliore per rimanere nell'ignoranza di questo linguaggio di programmazione. Che agli inizi, conviene imparare solo per effettuare PROGRAMMAZIONE PROCEDURALE, come negli antichi linguaggi di programmazione, tipo BASIC. Poi si può passare alla PROGRAMMAZIONE AD OGGETTI, e dopo, alla fine, alla PROGRAMMAZIONE VISUALE, per componenti già predisposti e facili da trascinare sul foglio di lavoro.
    Un vero programmatore è colui che leggendo il CODICE sa dirti esattamente cosa farà la macchina, e senza far girare il programma, senza aver dato il RUN, ti dice subito gli errori che esso, il programma, sta per compiere e a cosa sono dovuti. in pratica, tutto ciò che la nostra utente ci scrive solo dopo aver letto le risposte del compilatore...
    Baci e abbracci, OTTOFONSUPPOST.
     
    Ultima modifica: 31 Luglio 2016
Sto caricando...

Condividi questa Pagina