2012-07-25 27 views
8

Utilizzo l'integrazione di Eclipse JUnit che include automaticamente la libreria JUnit nel mio progetto. Il problema è che quando esporto il mio progetto usando la destinazione JAR Runnable, include JUnit.Escludi JUnit da Eclipse esportato JAR

Esiste un modo per escludere JUnit (e idealmente anche i test) dal JAR esportato?

+0

io non sono uno specialista di Eclipse, ma penso che utilizza Ant. Ho ragione? Se è così, probabilmente il tuo script di build ha alcune fasi (obiettivi in ​​gergo Ant) che puoi interferire, inserire del codice per eseguire alcune attività cusomizzate, nel tuo caso eliminare il jar jUnit prima che sia incluso. Faccio molte cose come questa con NetBeans senza problemi. In NetBeans, la fase precedente alla confezione è l'obiettivo "-pre-dist". – davidbuzatto

+0

No, non usa Ant AFAIK. Penso che forse un'opzione è di usare una sorta di integrazione Ant in Eclipse (ammesso che esista una cosa del genere) per fare l'edificio vero e proprio, ma spero che ci sia una soluzione più semplice. –

risposta

1

ho trovato una soluzione al problema utilizzando Ant all'interno di Eclipse e la seguente build.xml:

<project> 
    <target name="jar"> 
    <jar destfile="out.jar" basedir="bin"> 
     <zipgroupfileset dir="lib" includes="*.jar" /> 
     <manifest> 
     <attribute name="Main-Class" value="com.example.Main" /> 
     </manifest> 
    </jar> 
    </target> 
</project> 
0

È possibile rimuovere il pacchetto JUnit da '.classpath' file.Then esportare il file jar di nuovo

+0

Non si rompe JUnit in Eclipse? –

+0

No, questo rimuove solo il Junit dal progetto corrente – user1461926

1

Se si sta creando il vostro JAR facendo clic destro sul progetto e selezionando l'esportazione e quindi raccogliendo file JAR, è puoi rimuovere i tuoi test dall'esportazione deselezionando la tua cartella di test. Vedere la discussione correlata this e l'esempio this.

+0

. L'ho provato ma il file JAR risultante non è eseguibile. –

+0

Sei arrivato a questa risposta? http://www.eclipse.org/forums/index.php/mv/msg/198085/633133/#msg_633133 – Tyson

+0

Sì. Non ha funzionato per me. –