package java

891

Nuovo Utente
77
7
Ciao a tutti, ho un problema con un esercizio di programmazione a oggetti in java. Ho iniziato questo corso dopo aver studiato il corso base di java e ora ho un problema. Come faccio ad usare un package che mi viene dato dal professore? Mi spiego meglio, il prof ci ha fornito una cartella con dentro il package ma non so come sfruttarla! Vi riporto l'esempio qui sotto, sicuramente si tratta di una banalità ma non ne riesco a venir fuori. Il testo dell'esercizio nel libro di testo è il seguente:

import prog.io.ConsoleOutputManager;

public class Esempio {

public static void main(String[] args) {

ConsoleOutputManager esempio = new ConsoleOutputManager();
esempio.println("ciao");

}
}
Io ho provato a copiarlo tale e quale ma non funziona proprio per il problema di prima. Mi date una mano? Comunque uso eclipse per editare.
Grazie mille
 

ocean62

Utente Attivo
161
38
CPU
I7 5820K Kraken X61 cooled
Scheda Madre
MSI X99 SLI PLUS
HDD
Samsung SSD 850 PRO 1TB - WD Black 2TB - WD RE 2TB
RAM
Corsair DDR4 2666GHz 32GB
GPU
Palit GTX980Ti Super JetStream
PSU
XFX XTR750 - APC SMART-UPS 1500VA SMT1500I
Case
Corsair Obsidian 450D
OS
Windows 10 pro 64
Probabilmente devi solo includere la cartella nei tuoi sorgenti. Che IDE usi?
 

891

Nuovo Utente
77
7
Uso eclipse. Ho la cartella 'prog' che a sua volta contiene la cartella 'io'. Dove la devo mettere?
 

ocean62

Utente Attivo
161
38
CPU
I7 5820K Kraken X61 cooled
Scheda Madre
MSI X99 SLI PLUS
HDD
Samsung SSD 850 PRO 1TB - WD Black 2TB - WD RE 2TB
RAM
Corsair DDR4 2666GHz 32GB
GPU
Palit GTX980Ti Super JetStream
PSU
XFX XTR750 - APC SMART-UPS 1500VA SMT1500I
Case
Corsair Obsidian 450D
OS
Windows 10 pro 64
Eclipse ti permette di definire più radici per i tuoi sorgenti. Poiché i package sono legati alla struttura delle directory, dovresti avere una directory p.e. src per i sorgenti del tuo progetto e un'altra allo stesso livello contenente la libreria del tuo prof. Una cosa del genere:

Codice:
CorsoJavaProgramma1
     src
       my
         first
           program
             Esempio.java
     profSrc
       prog
         io
           ConsoleOutputManager.java

Controlla qual è il package corretto per la classe ConsoleOutputManager. Con la struttura che ho indicato, il package per la tua classe Esempio sarà my.first.program
 
Ultima modifica:

891

Nuovo Utente
77
7
Ho combinato trovando il file jar della libreria prog e facendo su progetto java di eclipse ''build classpath'' --''library'' -- ''add external jar''. Però non ho ancora capito come si sfrutta quella cartella ''prog''. Mi spiegheresti passo passo? Grazie comunque per la pazienza!
 

ocean62

Utente Attivo
161
38
CPU
I7 5820K Kraken X61 cooled
Scheda Madre
MSI X99 SLI PLUS
HDD
Samsung SSD 850 PRO 1TB - WD Black 2TB - WD RE 2TB
RAM
Corsair DDR4 2666GHz 32GB
GPU
Palit GTX980Ti Super JetStream
PSU
XFX XTR750 - APC SMART-UPS 1500VA SMT1500I
Case
Corsair Obsidian 450D
OS
Windows 10 pro 64
Ho combinato trovando il file jar della libreria prog e facendo su progetto java di eclipse ''build classpath'' --''library'' -- ''add external jar''. Però non ho ancora capito come si sfrutta quella cartella ''prog''. Mi spiegheresti passo passo? Grazie comunque per la pazienza!
Se hai il jar sei a posto. Ho visto che mi si è incasinata l'indentazione nell'esempio che ho fatto, ma ora è corretta, da quella dovresti riuscire a capire come usare prog. La prima cosa da verificare è il package di ConsoleOutputManager che ti serve per determinare la radice da aggiungere in Eclipse insieme a quella dei tuoi sorgenti.
 

891

Nuovo Utente
77
7
Eclipse ti permette di definire più radici per i tuoi sorgenti. Poiché i package sono legati alla struttura delle directory, dovresti avere una directory p.e. src per i sorgenti del tuo progetto e un'altra allo stesso livello contenente la libreria del tuo prof. Una cosa del genere:

Codice:
CorsoJavaProgramma1
     src
       my
         first
           program
             Esempio.java
     profSrc
       prog
         io
           ConsoleOutputManager.java

Controlla qual è il package corretto per la classe ConsoleOutputManager. Con la struttura che ho indicato, il package per la tua classe Esempio sarà my.first.program

Però io ho i vari file tra i quali ''ConsoleOutputManager'' in .class e non in .java. Cambia qualcosa?
 

ocean62

Utente Attivo
161
38
CPU
I7 5820K Kraken X61 cooled
Scheda Madre
MSI X99 SLI PLUS
HDD
Samsung SSD 850 PRO 1TB - WD Black 2TB - WD RE 2TB
RAM
Corsair DDR4 2666GHz 32GB
GPU
Palit GTX980Ti Super JetStream
PSU
XFX XTR750 - APC SMART-UPS 1500VA SMT1500I
Case
Corsair Obsidian 450D
OS
Windows 10 pro 64
Però io ho i vari file tra i quali ''ConsoleOutputManager'' in .class e non in .java. Cambia qualcosa?
Be', sì, vuol dire che sono già compilati e quindi il riferimento alla directory non va fra i sorgenti, ma nelle librerie esterne dove puoi aggiungere sia un jar sia una directory. La struttura di esempio diventa quindi:

Codice:
CorsoJavaProgramma1
  src
    my
      first
        program
          Esempio.java
  profLib
    prog
      io
        ConsoleOutputManager.class
        <altri files class>

In pratica, sotto profLib metti tutta la struttura di directory che ti ha passato il prof e aggiungi profLib alle librerie esterne.
 
  • Mi piace
Reazioni: 891

891

Nuovo Utente
77
7
Ok grazie mille, e poi uso sempre import per utilizzare una di quelle classi? Grazie ancora!
 

ocean62

Utente Attivo
161
38
CPU
I7 5820K Kraken X61 cooled
Scheda Madre
MSI X99 SLI PLUS
HDD
Samsung SSD 850 PRO 1TB - WD Black 2TB - WD RE 2TB
RAM
Corsair DDR4 2666GHz 32GB
GPU
Palit GTX980Ti Super JetStream
PSU
XFX XTR750 - APC SMART-UPS 1500VA SMT1500I
Case
Corsair Obsidian 450D
OS
Windows 10 pro 64
Ok grazie mille, e poi uso sempre import per utilizzare una di quelle classi? Grazie ancora!
Sì, una volta che hai impostato la directory contenente le classi compilate nelle librerie, queste entrano a far parte del tuo class path.
 
  • Mi piace
Reazioni: 891

Ci sono discussioni simili a riguardo, dai un'occhiata!

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!

Discussioni Simili