Tengo un proyecto creado en eclipse con dependencias de jar de terceros. Estoy tratando de generar un archivo de compilación adecuado para ant-usando eclipses incorporada export-> ant buildfile feature como un bloque de inicio.Ant build classpath jar genera "error al abrir archivo zip"
Cuando ejecuto el destino de generación me sale el siguiente error:
[javac] error: error reading /base/repo/FabTrace/lib/apache/geronimo/specs/geronimo-j2ee-management_1.0_spec/1.0/geronimo-j2ee-management_1.0_spec-1.0.jar; error in opening zip file
Y todo el fichero de construcción (auto-generado por el eclipse) tiene el siguiente aspecto: (Nota: el error anterior siempre hace referencia a la primera tarro que aparece en la ruta de clase)
<project basedir="." default="build" name="FabTrace">
<property environment="env"/>
<property name="ECLIPSE_HOME" value="/opt/apps/eclipse"/>
<property name="debuglevel" value="source,lines,vars"/>
<property name="target" value="1.5"/>
<property name="source" value="1.5"/>
<path id="JUnit 4.libraryclasspath">
<pathelement location="${ECLIPSE_HOME}/plugins/org.junit4_4.5.0.v20090824/junit.jar"/>
<pathelement location="${ECLIPSE_HOME}/plugins/org.hamcrest.core_1.1.0.v20090501071000.jar"/>
</path>
<path id="FabTrace.classpath">
<pathelement location="bin"/>
<pathelement location="lib/apache/geronimo/specs/geronimo-j2ee-management_1.0_spec/1.0/geronimo-j2ee-management_1.0_spec-1.0.jar"/>
<pathelement location="lib/apache/geronimo/specs/geronimo-jms_1.1_spec/1.0/geronimo-jms_1.1_spec-1.0.jar"/>
<pathelement location="lib/commons-collections/commons-collections/3.2/commons-collections-3.2.jar"/>
<pathelement location="lib/commons-io/commons-io/1.4/commons-io-1.4.jar"/>
<pathelement location="lib/commons-lang/commons-lang/2.1/commons-lang-2.1.jar"/>
<pathelement location="lib/commons-logging/commons-logging/1.1/commons-logging-1.1.jar"/>
<pathelement location="lib/commons-logging/commons-logging-api/1.1/commons-logging-api-1.1.jar"/>
<pathelement location="lib/javax/activation/activation/1.1/activation-1.1.jar"/>
<pathelement location="lib/javax/jms/jms/1.1/jms-1.1.jar"/>
<pathelement location="lib/javax/mail/mail/1.4/mail-1.4.jar"/>
<pathelement location="lib/javax/xml/bind/jaxb-api/2.1/jaxb-api-2.1.jar"/>
<pathelement location="lib/javax/xml/stream/stax-api/1.0-2/stax-api-1.0-2.jar"/>
<pathelement location="lib/junit/junit/4.4/junit-4.4.jar"/>
<pathelement location="lib/log4j/log4j/1.2.15/log4j-1.2.15.jar"/>
<pathelement location="lib/apache/camel/camel-jms-2.0-M1.jar"/>
<pathelement location="lib/spring/spring-2.5.6.jar"/>
<pathelement location="lib/apache/camel/camel-bundle-2.0-M1.jar"/>
<pathelement location="lib/backport-util-concurrent/backport-util-concurrent-3.1.jar"/>
<pathelement location="lib/commons-pool/commons-pool-1.4.jar"/>
<pathelement location="lib/apache/camel/camel-activemq-1.1.0.jar"/>
<pathelement location="lib/apache/activemq/activemq-camel-5.2.0.jar"/>
<pathelement location="lib/jencks/jencks-2.2-all.jar"/>
<pathelement location="lib/jencks/jencks-amqpool-2.2.jar"/>
<pathelement location="lib/activemq/apache-activemq-5.3.1/activemq-all-5.3.1.jar"/>
<pathelement location="lib/activemq/apache-activemq-5.3.1/lib/optional/xbean-spring-3.6.jar"/>
<pathelement location="lib/activemq/apache-activemq-5.3.1/lib/activemq-core-5.3.1.jar"/>
<pathelement location="lib/activemq/apache-activemq-5.3.1/lib/camel-jetty-2.2.0.jar"/>
<pathelement location="lib/activemq/apache-activemq-5.3.1/lib/web/jetty-6.1.9.jar"/>
<pathelement location="lib/activemq/apache-activemq-5.3.1/lib/web/jetty-util-6.1.9.jar"/>
<pathelement location="lib/activemq/apache-activemq-5.3.1/lib/web/jetty-xbean-6.1.9.jar"/>
<pathelement location="lib/activemq/apache-activemq-5.3.1/lib/optional/activemq-optional-5.3.1.jar"/>
<pathelement location="lib/activemq/apache-activemq-5.3.1/lib/web/geronimo-servlet_2.5_spec-1.2.jar"/>
<pathelement location="lib/activemq/apache-activemq-5.3.1/lib/optional/spring-beans-2.5.6.jar"/>
<pathelement location="lib/activemq/apache-activemq-5.3.1/lib/optional/spring-context-2.5.6.jar"/>
<pathelement location="lib/activemq/apache-activemq-5.3.1/lib/optional/spring-core-2.5.6.jar"/>
<path refid="JUnit 4.libraryclasspath"/>
</path>
<target name="init">
<mkdir dir="bin"/>
<copy includeemptydirs="false" todir="bin">
<fileset dir="src/main/java">
<exclude name="**/*.launch"/>
<exclude name="**/*.java"/>
</fileset>
</copy>
<copy includeemptydirs="false" todir="bin">
<fileset dir="src/test/java">
<exclude name="**/*.launch"/>
<exclude name="**/*.java"/>
</fileset>
</copy>
<copy includeemptydirs="false" todir="bin">
<fileset dir="config">
<exclude name="**/*.launch"/>
<exclude name="**/*.java"/>
</fileset>
</copy>
</target>
<target name="clean">
<delete dir="bin"/>
</target>
<target depends="clean" name="cleanall"/>
<target depends="build-subprojects,build-project" name="build"/>
<target name="build-subprojects"/>
<target depends="init" name="build-project">
<echo message="${ant.project.name}: ${ant.file}"/>
<javac debug="true" debuglevel="${debuglevel}" destdir="bin" source="${source}" target="${target}">
<src path="src/main/java"/>
<classpath refid="FabTrace.classpath"/>
</javac>
<javac debug="true" debuglevel="${debuglevel}" destdir="bin" source="${source}" target="${target}">
<src path="src/test/java"/>
<classpath refid="FabTrace.classpath"/>
</javac>
<javac debug="true" debuglevel="${debuglevel}" destdir="bin" source="${source}" target="${target}">
<src path="config"/>
<classpath refid="FabTrace.classpath"/>
</javac>
</target>
</project>
(sé que hay cosas específicas eclipsar aquí. Pero consigo los mismos resultados con o sin él.)
He hecho búsquedas antiguas en Google y navegué sin éxito.
Puedo confirmar que todos los frascos realmente existen. También lo intenté desde la línea de comandos y como sudo, de nuevo, con los mismos resultados.
Cualquier ayuda sería muy apreciada.
Saludos
Es el archivo jar válido? ¿Puedes abrirlo en WinZip u otra herramienta de compresión? – VonC
suspiro. Me lo había imaginado porque había eliminado los primeros frascos que originalmente causaron este problema (ni siquiera estaba convencido de que realmente los necesitara) y el problema simplemente se movió al siguiente frasco ... bueno, eso me hizo sospechar de una falla sistémica. Resulta que de hecho tuve un montón de botes de basura en el classpath. Debe haber estropeado una descarga o algo así en algún momento. De todos modos, todo arreglado ahora. Cheers –
¿Por qué no mueve su comentario a una respuesta y luego lo acepta? Esto podría ser una pregunta útil para alguien, pero por el momento se muestra como "sin respuesta". –