简体   繁体   中英

microservices: C:\…m2\repository\org\glassfish\jersey\core\jersey-client\2.22.1\jersey-client-2.22.1.jar; invalid LOC header (bad signature)

I was looking to developed the microservices example by following the link: https://github.com/bjedrzejewski/tasklist-service . When I simply compile the whole source code I faced compilation error, not sure why ? It looks to me something wrong with my .m2 home not so sure though.

The error coming for reference:-

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile) on project tasklist-service: Compilation failure: Compilation failure:
[ERROR] error: error reading C:\Users\user\.m2\repository\org\glassfish\jersey\core\jersey-client\2.22.1\jersey-client-2.22.1.jar; invalid LOC header (bad signature)
[ERROR] error: error reading C:\Users\user\.m2\repository\org\eclipse\jetty\jetty-servlet\9.2.13.v20150730\jetty-servlet-9.2.13.v20150730.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.3.2:compile (default-compile) on project tasklist-service: Compilation failure
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
        at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.CompilationFailureException: Compilation failure
        at org.apache.maven.plugin.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:656)
        at org.apache.maven.plugin.CompilerMojo.execute(CompilerMojo.java:128)
        at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)
        ... 20 more
[ERROR]
[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

I only updated pom.xml to use Java version 8, nothing special

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>bjedrzejewski</groupId>
    <artifactId>tasklist-service</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <dropwizard.version>0.9.1</dropwizard.version>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>io.dropwizard</groupId>
            <artifactId>dropwizard-core</artifactId>
            <version>${dropwizard.version}</version>
        </dependency>
        <dependency>
            <groupId>org.glassfish.jersey.core</groupId>
            <artifactId>jersey-common</artifactId>
            <version>2.23.2</version>
        </dependency>

    </dependencies>


    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <source>${java.version}</source>
                    <target>${java.version}</target>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-assembly-plugin</artifactId>
                <configuration>
                    <archive>
                        <manifest>
                            <mainClass>com.bjedrzejewski.tasklistservice.TaskListServiceApplication</mainClass>
                        </manifest>
                    </archive>
                    <descriptorRefs>
                        <descriptorRef>jar-with-dependencies</descriptorRef>
                    </descriptorRefs>
                    <appendAssemblyId>false</appendAssemblyId>
                </configuration>
                <executions>
                    <execution>
                        <id>make-assembly</id> <!-- this is used for inheritance merges -->
                        <phase>package</phase> <!-- bind to the packaging phase -->
                        <goals>
                            <goal>single</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>

Also pom.xml dont have much entry of dependencies but still I see many jars files gets download why this so ?

E:\Advance Java\MicroServices\Git code\tasklist-service>mvn dependency:tree
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building tasklist-service 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ tasklist-service ---
[INFO] bjedrzejewski:tasklist-service:jar:1.0-SNAPSHOT
[INFO] +- io.dropwizard:dropwizard-core:jar:0.9.1:compile
[INFO] |  +- io.dropwizard:dropwizard-util:jar:0.9.1:compile
[INFO] |  |  +- com.fasterxml.jackson.core:jackson-annotations:jar:2.6.0:compile
[INFO] |  |  +- com.google.guava:guava:jar:18.0:compile
[INFO] |  |  +- com.google.code.findbugs:jsr305:jar:3.0.1:compile
[INFO] |  |  \- joda-time:joda-time:jar:2.9:compile
[INFO] |  +- io.dropwizard:dropwizard-jackson:jar:0.9.1:compile
[INFO] |  |  +- com.fasterxml.jackson.core:jackson-core:jar:2.6.3:compile
[INFO] |  |  +- com.fasterxml.jackson.core:jackson-databind:jar:2.6.3:compile
[INFO] |  |  +- com.fasterxml.jackson.datatype:jackson-datatype-jdk7:jar:2.6.3:compile
[INFO] |  |  +- com.fasterxml.jackson.datatype:jackson-datatype-guava:jar:2.6.3:compile
[INFO] |  |  +- com.fasterxml.jackson.module:jackson-module-afterburner:jar:2.6.3:compile
[INFO] |  |  +- com.fasterxml.jackson.datatype:jackson-datatype-joda:jar:2.6.3:compile
[INFO] |  |  +- org.slf4j:slf4j-api:jar:1.7.12:compile
[INFO] |  |  \- ch.qos.logback:logback-classic:jar:1.1.3:compile
[INFO] |  +- io.dropwizard:dropwizard-validation:jar:0.9.1:compile
[INFO] |  |  +- org.hibernate:hibernate-validator:jar:5.2.2.Final:compile
[INFO] |  |  |  +- javax.validation:validation-api:jar:1.1.0.Final:compile
[INFO] |  |  |  +- org.jboss.logging:jboss-logging:jar:3.2.1.Final:compile
[INFO] |  |  |  \- com.fasterxml:classmate:jar:1.1.0:compile
[INFO] |  |  \- org.glassfish:javax.el:jar:3.0.0:compile
[INFO] |  +- io.dropwizard:dropwizard-configuration:jar:0.9.1:compile
[INFO] |  |  +- com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:jar:2.6.3:compile
[INFO] |  |  |  \- org.yaml:snakeyaml:jar:1.15:compile
[INFO] |  |  \- org.apache.commons:commons-lang3:jar:3.4:compile
[INFO] |  +- io.dropwizard:dropwizard-logging:jar:0.9.1:compile
[INFO] |  |  +- io.dropwizard.metrics:metrics-logback:jar:3.1.2:compile
[INFO] |  |  +- org.slf4j:jul-to-slf4j:jar:1.7.12:compile
[INFO] |  |  +- ch.qos.logback:logback-core:jar:1.1.3:compile
[INFO] |  |  +- org.slf4j:log4j-over-slf4j:jar:1.7.12:compile
[INFO] |  |  +- org.slf4j:jcl-over-slf4j:jar:1.7.12:compile
[INFO] |  |  \- org.eclipse.jetty:jetty-util:jar:9.2.13.v20150730:compile
[INFO] |  +- io.dropwizard:dropwizard-metrics:jar:0.9.1:compile
[INFO] |  +- io.dropwizard:dropwizard-jersey:jar:0.9.1:compile
[INFO] |  |  +- org.glassfish.jersey.core:jersey-server:jar:2.22.1:compile
[INFO] |  |  |  +- org.glassfish.jersey.core:jersey-client:jar:2.22.1:compile
[INFO] |  |  |  \- org.glassfish.jersey.media:jersey-media-jaxb:jar:2.22.1:compile
[INFO] |  |  +- org.glassfish.jersey.ext:jersey-metainf-services:jar:2.22.1:compile
[INFO] |  |  +- org.glassfish.jersey.ext:jersey-bean-validation:jar:2.22.1:compile
[INFO] |  |  +- io.dropwizard.metrics:metrics-jersey2:jar:3.1.2:compile
[INFO] |  |  +- com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:jar:2.6.3:compile
[INFO] |  |  |  +- com.fasterxml.jackson.jaxrs:jackson-jaxrs-base:jar:2.6.3:compile
[INFO] |  |  |  \- com.fasterxml.jackson.module:jackson-module-jaxb-annotations:jar:2.6.3:compile
[INFO] |  |  +- org.glassfish.jersey.containers:jersey-container-servlet:jar:2.22.1:compile
[INFO] |  |  |  \- org.glassfish.jersey.containers:jersey-container-servlet-core:jar:2.22.1:compile
[INFO] |  |  +- org.eclipse.jetty:jetty-server:jar:9.2.13.v20150730:compile
[INFO] |  |  |  +- javax.servlet:javax.servlet-api:jar:3.1.0:compile
[INFO] |  |  |  \- org.eclipse.jetty:jetty-io:jar:9.2.13.v20150730:compile
[INFO] |  |  +- org.eclipse.jetty:jetty-webapp:jar:9.2.13.v20150730:compile
[INFO] |  |  |  \- org.eclipse.jetty:jetty-xml:jar:9.2.13.v20150730:compile
[INFO] |  |  \- org.eclipse.jetty:jetty-continuation:jar:9.2.13.v20150730:compile
[INFO] |  +- io.dropwizard:dropwizard-servlets:jar:0.9.1:compile
[INFO] |  |  \- io.dropwizard.metrics:metrics-annotation:jar:3.1.2:compile
[INFO] |  +- io.dropwizard:dropwizard-jetty:jar:0.9.1:compile
[INFO] |  |  +- io.dropwizard.metrics:metrics-jetty9:jar:3.1.2:compile
[INFO] |  |  +- org.eclipse.jetty:jetty-servlet:jar:9.2.13.v20150730:compile
[INFO] |  |  |  \- org.eclipse.jetty:jetty-security:jar:9.2.13.v20150730:compile
[INFO] |  |  +- org.eclipse.jetty:jetty-servlets:jar:9.2.13.v20150730:compile
[INFO] |  |  \- org.eclipse.jetty:jetty-http:jar:9.2.13.v20150730:compile
[INFO] |  +- io.dropwizard:dropwizard-lifecycle:jar:0.9.1:compile
[INFO] |  +- io.dropwizard.metrics:metrics-core:jar:3.1.2:compile
[INFO] |  +- io.dropwizard.metrics:metrics-jvm:jar:3.1.2:compile
[INFO] |  +- io.dropwizard.metrics:metrics-servlets:jar:3.1.2:compile
[INFO] |  |  \- io.dropwizard.metrics:metrics-json:jar:3.1.2:compile
[INFO] |  +- io.dropwizard.metrics:metrics-healthchecks:jar:3.1.2:compile
[INFO] |  +- net.sourceforge.argparse4j:argparse4j:jar:0.6.0:compile
[INFO] |  \- org.eclipse.jetty.toolchain.setuid:jetty-setuid-java:jar:1.0.3:compile
[INFO] \- org.glassfish.jersey.core:jersey-common:jar:2.23.2:compile
[INFO]    +- javax.ws.rs:javax.ws.rs-api:jar:2.0.1:compile
[INFO]    +- javax.annotation:javax.annotation-api:jar:1.2:compile
[INFO]    +- org.glassfish.jersey.bundles.repackaged:jersey-guava:jar:2.23.2:compile
[INFO]    +- org.glassfish.hk2:hk2-api:jar:2.5.0-b05:compile
[INFO]    |  +- org.glassfish.hk2:hk2-utils:jar:2.5.0-b05:compile
[INFO]    |  \- org.glassfish.hk2.external:aopalliance-repackaged:jar:2.5.0-b05:compile
[INFO]    +- org.glassfish.hk2.external:javax.inject:jar:2.5.0-b05:compile
[INFO]    +- org.glassfish.hk2:hk2-locator:jar:2.5.0-b05:compile
[INFO]    |  \- org.javassist:javassist:jar:3.20.0-GA:compile
[INFO]    \- org.glassfish.hk2:osgi-resource-locator:jar:1.0.1:compile
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.860 s
[INFO] Finished at: 2016-09-13T23:39:38+05:30
[INFO] Final Memory: 17M/309M
[INFO] ------------------------------------------------------------------------

I've had experinced this issue and as per research this error mainly occurs if the jar file may be corrupted. Try removing the all content of your

 C:\Users\[your username]\.m2\repository\ folder. 

Then right click your project, select Maven, Update Project, check on Force Update of Snapshots/Releases. Or simply to go the location where logs says invalid LOC header (bad signature) and delete it manually. in Your scenario, you need to delete all from

C:\Users\user\.m2\repository\org\glassfish\jersey\core\jersey-client\2.22.1\

and

C:\Users\user\.m2\repository\org\eclipse\jetty\jetty-servlet\9.2.13.v20150730\

and again compile the code using mvn clean install -DskipTests

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM