2014-04-26 14 views
42

Sono nuovo per Maven ..Io sto cercando di creare il progetto Maven per SpringMVC + Hiberante ma sto ottenendo molto errors..can uno qualsiasi slove il mio problema si prega di controllare il mio pom.xml per sottohibernate-commons-annotations-4.0.1.Final.jar; intestazione LOC non valida (firma errata)?

<?xml version="1.0" encoding="UTF-8"?><project> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>Spring3HibernateMaven</groupId> 
    <artifactId>Spring3HibernateMaven</artifactId> 
    <packaging>war</packaging> 
    <version>0.0.1-SNAPSHOT</version> 
    <description></description> 
    <build> 
     <plugins> 
      <plugin> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <version>2.3.2</version> 

       <configuration> 
        <source>1.5</source> 
        <target>1.5</target> 
       </configuration> 
      </plugin> 

      <!-- <plugin> 
       <artifactId>maven-war-plugin</artifactId> 
       <version>2.0</version> 

      </plugin> --> 
     </plugins> 
    </build> 
    <dependencies> 
     <dependency> 
      <groupId>javax.servlet</groupId> 
      <artifactId>servlet-api</artifactId> 
      <version>2.5</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-beans</artifactId> 
      <version>${org.springframework.version}</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-jdbc</artifactId> 
      <version>${org.springframework.version}</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-web</artifactId> 
      <version>${org.springframework.version}</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-webmvc</artifactId> 
      <version>${org.springframework.version}</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-orm</artifactId> 
      <version>${org.springframework.version}</version> 
     </dependency> 
     <dependency> 
      <groupId>org.hibernate</groupId> 
      <artifactId>hibernate-core</artifactId> 
      <version>4.1.9.Final</version> 
     </dependency> 

     <dependency> 
      <groupId>taglibs</groupId> 
      <artifactId>standard</artifactId> 
      <version>1.1.2</version> 
     </dependency> 
     <dependency> 
      <groupId>javax.servlet</groupId> 
      <artifactId>jstl</artifactId> 
      <version>1.1.2</version> 
     </dependency> 
     <dependency> 
      <groupId>mysql</groupId> 
      <artifactId>mysql-connector-java</artifactId> 
      <version>5.1.10</version> 
     </dependency> 
     <dependency> 
      <groupId>commons-dbcp</groupId> 
      <artifactId>commons-dbcp</artifactId> 
      <version>20030825.184428</version> 
     </dependency> 
     <dependency> 
      <groupId>commons-pool</groupId> 
      <artifactId>commons-pool</artifactId> 
      <version>20030825.183949</version> 
     </dependency> 

     <dependency> 
      <groupId>org.slf4j</groupId> 
      <artifactId>slf4j-api</artifactId> 
      <version>1.7.5</version> 
     </dependency> 

     <dependency> 
      <groupId>org.slf4j</groupId> 
      <artifactId>slf4j-simple</artifactId> 
      <version>1.6.4</version> 
     </dependency> 

     <dependency> 
      <groupId>org.slf4j</groupId> 
      <artifactId>slf4j-log4j12</artifactId> 
      <version>1.7.5</version> 
     </dependency> 
     <dependency> 
      <groupId>org.hibernate</groupId> 
      <artifactId>hibernate-annotations</artifactId> 
      <version>3.4.0.GA</version> 
     </dependency> 

    </dependencies> 
    <properties> 
     <org.springframework.version>3.0.2.RELEASE</org.springframework.version> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
    </properties> 
</project> 

ma sto ottenendo i seguenti errori

[INFO] ------------------------------------------------------------------------ 
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile) on project Spring3HibernateMaven: Compilation failure: Compilation failure: 
[ERROR] error: error reading C:\Users\Bhanu\.m2\repository\commons-logging\commons-logging\1.1.1\commons-logging-1.1.1.jar; invalid LOC header (bad signature) 
[ERROR] error: error reading C:\Users\Bhanu\.m2\repository\org\hibernate\hibernate-core\4.1.9.Final\hibernate-core-4.1.9.Final.jar; invalid LOC header (bad signature) 
[ERROR] error: error reading C:\Users\Bhanu\.m2\repository\antlr\antlr\2.7.7\antlr-2.7.7.jar; invalid LOC header (bad signature) 
[ERROR] error: error reading C:\Users\Bhanu\.m2\repository\org\jboss\logging\jboss-logging\3.1.0.GA\jboss-logging-3.1.0.GA.jar; invalid LOC header (bad signature) 
[ERROR] error: error reading C:\Users\Bhanu\.m2\repository\dom4j\dom4j\1.6.1\dom4j-1.6.1.jar; invalid LOC header (bad signature) 
[ERROR] error: error reading C:\Users\Bhanu\.m2\repository\org\hibernate\javax\persistence\hibernate-jpa-2.0-api\1.0.1.Final\hibernate-jpa-2.0-api-1.0.1.Final.jar; invalid LOC header (bad signature) 
[ERROR] error: error reading C:\Users\Bhanu\.m2\repository\org\hibernate\common\hibernate-commons-annotations\4.0.1.Final\hibernate-commons-annotations-4.0.1.Final.jar; invalid LOC header (bad signature) 
[ERROR] -> [Help 1] 
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. 
[ERROR] Re-run Maven using the -X switch to enable full debug logging. 
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles: 
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException 

può uno aiutarmi come risolvere il mio problema. Sto usando apache-maven-3.2.1 + Java1.6 + ecpliseIndigo

risposta

83

Questo appare come un problema di vasi danneggiati in fase di download. L'ho visto accadere solo quando uso eclipse. Ecco cosa ho fatto per sbarazzarsi di questo problema:

  • eliminano i contenuti dal C: \ Users \ Bhanu.m2 \ repository. O tutto o in modo selettivo - la tua scelta.
  • quindi utilizzare il prompt dei comandi per forzare scaricare vasetti e costruire

    mvn clean install 
    
+4

è sufficiente eliminare la cartella figlio discendente problematica nel repository '.m2' e forzare un' Progetto di aggiornamento' (nel mio caso con 'Forza istantanee di aggiornamento') ha fatto il trucco –

+2

Grazie a te ho risolto un simile (LOC non valido header) problema eliminando tutte le sottocartelle di "repository \ org \ springframework \ data \ spring-data-jpa \ .." e quindi eseguendo "mvn clean install -U" in seguito. Tuttavia dovevo ancora includere ed esportare le dipendenze di Maven in Eclipse Build Path – patrics

+3

Dare a quell'uomo un sigaro! @Vinay Rao –

0

Un'altra opzione è quella invece di eliminare il repo aggiungere uno nuovo, aggiornare Maven impostazioni di file - <localRepository>C:\\repos\\mycustomrepo</localRepository>

Questo può essere utile se stai lavorando tra diversi progetti non correlati, come è stato il mio caso. @Vinay La risposta di Rao mi ha indirizzato verso la creazione di un repository personalizzato.

0

Avevo lo stesso problema. Quindi ho aggiornato la mia libreria di esperti e ha funzionato per me.

+0

Che cosa significa "aggiorna la mia biblioteca di esperti"? Potete fornire alcune istruzioni? – Marvo

7

vi dirò quello che ho fatto

mi è stato sempre lo stesso errore in comune-registrazione così sono andato in C: \ Users \ admin.m2 \ repository \ commons-logging e cancellato la directory. Il problema è stato risolto la prossima volta che ho compilato.

1

mi è stato sempre lo stesso errore durante l'esecuzione del mvn installazione pulita comando

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.0.2:compile (default-compile) on project MongoModule: Compilation failure 
[ERROR] error: error reading /home/radium/.m2/repository/org/mongodb/mongo-java-driver/3.2.2/mongo-java-driver-3.2.2.jar; invalid LOC header (bad signature) 
[ERROR] -> [Help 1] 
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.0.2:compile (default-compile) on project MongoModule: Compilation failure 
error: error reading /home/radium/.m2/repository/org/mongodb/mongo-java-driver/3.2.2/mongo-java-driver-3.2.2.jar; invalid LOC header (bad signature) 

Poi ho cancellato il file mongo-java-driver-3.2.2.jar dalla repo Maven e ri eseguire il comando maven build, che ha costretto il maven a scaricare nuovamente il barattolo ea creare il progetto con successo.

4

So che questo è un thread vecchio, ma ho affrontato lo stesso problema (anche se con un file jar diverso).

in Eclipse, quando una build di Maven non riesce a causa di un colpo di testa LOC corrotto, viene generato un avviso (nel mio caso era primavera-tx-3.0.3.RELEASE.pom ma potrebbe essere qualsiasi altra dipendenza Maven).

Andare su nello stack-trace di build e capire quale JAR sta fallendo, eliminare la cartella di repository corrispondente dai repository .m2 e ricostruire, che dovrebbe fare il trucco.

6

Getta Perché il tuo hibernate-commons-annotations-4.0.1.Final.jar è non valido o danneggiato.

seguire la procedura:

Nota: La cartella .m2 è nascosta per impostazione predefinita. UnHide the Folder.

Passaggio 1: Elimina tutto il contenuto nella cartella .m2/repository.

Passaggio 2: riavviare il tuo Eclipse.

Passaggio 3: Maven-> Aggiorna progetto .Checked- Forza aggiornamento di istantanee/rilasci.

Passaggio 4: Esegui come Maven Clean.

Passaggio 5: esecuzione come installazione di Maven.

Passaggio 6: Pulisci progetto.

Passaggio 7: esecuzione del progetto.

Spero che troviate la vostra soluzione qui ..

Thanks ..

3

E 'importante ricordare che ciò che non è valido è inutile (ad esempio corrotto), quindi:

  • Elimina tutto JAR con firma non valida. valido non valido.
  • Aggiorna progetto Maven, pulire, installare.
  • Se ancora ottenere validi intestazione LOC - cambiamento di pronti contro termine e l'ISP ...

ho avuto problema simile e non aveva niente a che fare con revisioning o JAR Maven per sé ... Il problema è stato danneggiato ( Eclipse with Maven plugin does not work with latest revisions, but works with older ones).

Buona fortuna!

3

Il motivo è un file jar corrotto. Utilizzare mvn dependency:purge-local-repository per eliminare e ricaricare le dipendenze nel repository di Maven locale.

+0

unica cosa che ha funzionato per me, complimenti! – user1386375

0

nagivate al tuo C: \ Users \ user.m2 \ repository \ projects \ Progetto1

Scegli il progetto corrispondente e eliminarlo dalla .m2. Quindi si usa maven do mvn clean install altrimenti lo si costruisce di conseguenza nel terminale. ricreare quei file jar per te Reinstallare il file ear o war nel server e dovrebbe essere distribuito bene ora.

Ha funzionato per me.

Problemi correlati