2013-06-18 47 views
5

Sto cercando di esportare un pacchetto specifico e i suoi sotto-pacchetti come un barattolo non eseguibile in Eclipse. Faccio clic destro sul pacchetto che voglio esportare e premo "Esporta". Tuttavia, quando esporto il jar, esporta solo il pacchetto di livello superiore che ho selezionato e tutte le sue classi.In Eclipse, come posso esportare un pacchetto e tutti i sotto-pacchetti come un vaso?

Quello che voglio è esportare automaticamente tutti i sotto-pacchetti anche con esso. L'unico modo in cui sono stato in grado di fare questo finora è quello di selezionare effettivamente ciascun sottoprogetto (e i relativi sotto-pacchetti, ecc ...) per l'esportazione. C'è un modo per selezionare automaticamente tutti i sottoprogetti da esportare?

Un esempio (con immagine):

voglio esportare il pacchetto "bar1" come un barattolo. Clicco con il tasto destro sul pacchetto bar1, clicco su "Esporta" e seleziona JAR. Tuttavia, il sottoprogetto di bar1, "util". Non è selezionato per impostazione predefinita e non verrà esportato. Se volessi esportare i sotto-pacchetti di bar1, dovrei selezionarli singolarmente. Questo è un dolore se ci sono molti pacchetti. C'è un modo per fare in modo che Eclipse aggiunga il sottoprogetto "util" per l'esportazione quando provo ad esportare il pacchetto "bar1"?

enter image description here

+0

Da Package-explorer, fare clic con il tasto destro. Scegli Esporta ... Quindi, scegli il file Java/Jar. Quindi Avanti> ti permetterà di scegliere quello che vuoi –

+0

Questo è quello che sto facendo attualmente. Come ho già detto, il problema è che sono in grado di esportare solo il pacchetto di livello superiore e non i relativi pacchetti secondari (e relativi pacchetti secondari) senza selezionarli singolarmente. Sto chiedendo se c'è un modo per selezionare automaticamente tutti i sottoprocessi. – Feles

risposta

2

Penso che quello che hai è corretto e non c'è un sacco di automazione o di un modo più semplice a fare clic su di esso attraverso di esso per selezionare un pacchetto specifico e sotto-pacchetti. Tuttavia, penso che sia possibile utilizzare ant o maven per fare ciò che è molto più automatico e più semplice. Ecco come è possibile selezionare il pacchetto specifico ant:

<dirset dir="aDirectory"> 
    <include name="a/package/**"/> 
    <exclude name="**/package/to/exclude**"/> 
</dirset> 
+0

Va bene, se questo è l'unico modo in cui lo esaminerò. Grazie per l'aiuto. – Feles

0

Vai a file-> Esporta-> file JAR, non è possibile selezionare "Esporta file di classe generata e fonti" e assicurarsi che sia selezionato il progetto, e tutto cartella sotto ci sono anche! Inoltre, assicurati che siano nell'area Configurazione configurazione -> Ordine ed esportazione, e siano controllati per l'esportazione.

Se tutto il resto fallisce, provare FatJar. Rileva tutte le dipendenze e le aggrega automaticamente nel JAR. In Eclipse puoi usare FatJar usando l'opzione Build Fat Jar per i progetti Java.

+0

Quindi praticamente no. –

+0

FatJar è un plugin di esportazione JAR potenziato per Eclipse, provalo. –

+0

So cos'è FatJar, ma la domanda è chiedere qualcosa di diverso. –

0

Il modo migliore che ho trovato è quello di impostare la visualizzazione Package Explorer per piatto, invece di Hierarchical (triangolo -> presentazione Package -> Flat)

Quindi selezionare tutti i pacchetti che iniziano con bar1, fare clic con il pulsante destro del mouse, esportare.

Problemi correlati