복붙노트

[SPRING] Eclipse Maven 오류 : 프로젝트의 필수 라이브러리에 대한 아카이브를 읽을 수 없거나 올바른 ZIP 파일이 아닙니다.

SPRING

Eclipse Maven 오류 : 프로젝트의 필수 라이브러리에 대한 아카이브를 읽을 수 없거나 올바른 ZIP 파일이 아닙니다.

스프링 웹 MVC를 사용하는 Eclipse Maven 프로젝트에서 마커 탭에서 다음과 같은 오류가 발생합니다.

Archive for required library: 'D:/mypath/.m2/repository/javax/transaction/jta/1.0.1B/jta-1.0.1B.jar' in project 'DocumentManager' cannot be read or is not a valid ZIP file

내가 확인한, 항아리 파일은 실제로 표시된 URL에 존재합니다. jar 파일의 백업본을 복사하여 그 위치에있는 jar 파일을 덮어 씌우는 것조차도 오류를 제거하지는 못했습니다. 나는 문제를 해결하지 못해서 maven을 업데이트하도록했다. 나도 일식을 다시 시작했다.

한 시점에서 jta-1.0.1B.jar은 jta-1.0.1B.jar.LatestUpdate 였으므로 이름을 jta-1.0.1B.jar로 단축했습니다.

pom.xml에서 오류 메시지의 위치는 2 행이며 다음과 같습니다.

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">  

이 URL에서 jta-1.0.1B.jar을 수동으로 다운로드하면 pom.xml의 오류는 사라지지만 .java 클래스 파일의 새로운 오류로 바뀌어 Document 클래스의 5 가지 메소드가 유효하지 않음을 나타냅니다.

나는 이것과 이것을 읽었지만, 나는 struts를 사용하지 않고, 3.3.2.ga의 최대 절전 모드를 이미 포함하고 있으며, pom.xml에 저장소 태그가 없다. (이것은 어쨌든 문제를 해결하지도 못했다.) 그래서 저는 이것이 중복 된 것이라고 생각하지 않습니다.

누구든지이 문제를 해결할 수있는 방법을 제안 할 수 있습니까? 저장소 태그가 필요한 경우 어디에 넣어야합니까? 그리고 그것의 추가를 수용하기 위해 나는 무엇을 바꾸어야합니까?

호기심이 많은 사람을 위해, 내 pom.xml은 다음과 같이 참조 용으로 포함되어 있습니다.

<?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>
  <packaging>war</packaging>
  <version>0.0.1-SNAPSHOT</version>
  <description></description>
  <build>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <source>1.5</source>
          <target>1.5</target>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-war-plugin</artifactId>
        <version>2.0.1</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>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>org.hibernate</groupId>
      <artifactId>hibernate-entitymanager</artifactId>
      <version>3.3.2.GA</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>1.5.4</version>
    </dependency>
    <dependency>
      <groupId>commons-fileupload</groupId>
      <artifactId>commons-fileupload</artifactId>
      <version>1.2.1</version>
    </dependency>
    <dependency>
      <groupId>commons-io</groupId>
      <artifactId>commons-io</artifactId>
      <version>1.3</version>
    </dependency>
<!-- dependency to fix JSPServletException -->
    <dependency>
        <groupId>org.apache.tomcat</groupId>
        <artifactId>jsp-api</artifactId>
        <version>6.0.32</version>
        <scope>provided</scope>               
    </dependency>
  </dependencies>
  <properties>
    <org.springframework.version>3.2.4.RELEASE</org.springframework.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
  <groupId>DocumentManager</groupId>
  <artifactId>DocumentManager</artifactId>
</project>  

해결법

  1. ==============================

    1.이와 같은 문제를 해결하려면 Maven이 파일을 다시 다운로드하도록하십시오.

    이와 같은 문제를 해결하려면 Maven이 파일을 다시 다운로드하도록하십시오.

    그러면 파일을 다시 다운로드하고 로컬 저장소의 "잔여 물"을 정리해야합니다.

    Eclipse가 여전히 JAR 파일이 손상되었다고 불평하면 :

    JAR 파일이 손상된 경우 폴더를 다시 삭제하고 Maven을 한 번 더 실행하십시오. Maven이 보관 파일을 다운로드하고 해당 사이트의 관리자에게 연락하는 데 사용 된 URL을 기록하십시오.

  2. ==============================

    2.오류 콘솔에 지정된 저장소로 수동으로 이동할 수 있습니다 그건  필요한 라이브러리에 대한 보관 : 'DocumentManager'프로젝트의 '** D : /mypath/.m2/repository/javax/transaction/jta/1.0.1B/jta-1.0.1B.jar**'을 읽을 수 없거나 유효한 ZIP 파일

    오류 콘솔에 지정된 저장소로 수동으로 이동할 수 있습니다 그건  필요한 라이브러리에 대한 보관 : 'DocumentManager'프로젝트의 '** D : /mypath/.m2/repository/javax/transaction/jta/1.0.1B/jta-1.0.1B.jar**'을 읽을 수 없거나 유효한 ZIP 파일

    언급 된 JAR 삭제

    eclipse로 이동하여 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 as-> maven-install을 선택하십시오. 올바른 jar 파일을 다운로드합니다.

  3. ==============================

    3.최대 절전 모드 종속성에서 JTA를 제외해야합니다.

    최대 절전 모드 종속성에서 JTA를 제외해야합니다.

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate</artifactId>
        <version>3.2.3.ga</version>
        <exclusions>
            <exclusion>
                <artifactId>javax.transaction</artifactId>
                <groupId>jta</groupId>
            </exclusion>
        </exclusions>
    </dependency>
    

    그런 다음 jta 종속성을 추가하십시오.

    <dependency>
        <groupId>javax.transaction</groupId>
        <artifactId>jta</artifactId>
        <version>1.1</version>
    </dependency>
    
  4. ==============================

    4.저와의 문제는 빌드 경로 -> 빌드 경로 구성 -> 라이브러리 -> 작은 십자 표시가있는 jta lib 제거로 이동하여 수정되었습니다.

    저와의 문제는 빌드 경로 -> 빌드 경로 구성 -> 라이브러리 -> 작은 십자 표시가있는 jta lib 제거로 이동하여 수정되었습니다.

    프로젝트를 성공적으로 빌드 할 수 있었지만 프로젝트 새로 고침 / 프로젝트 정리 후에도이 오류가 발생했습니다.

  5. ==============================

    5.maven 중앙 저장소는 주어진 groupId / artifact에 대한 jar 파일을 포함하지 않습니다. pom.xml 만 있습니다.

    maven 중앙 저장소는 주어진 groupId / artifact에 대한 jar 파일을 포함하지 않습니다. pom.xml 만 있습니다.

    Spring 3.2를 사용하고 있으므로, jta 1.1에 대한 참조가 있어야하는 가장 최근 버전 (4.2.6. 최종)으로 간단하게 최대 절전 모드를 업그레이드하는 것이 좋습니다. 또는 간단하게 paven에 1.1 버전을 포함 시키십시오.이 버전은 중앙에 jar 파일이 있습니다.

  6. ==============================

    6.이 문제를 간단하게 해결합니다.

    이 문제를 간단하게 해결합니다.

    그 이유는 캐시 정보이므로 정보를 새로 고치기 만하면됩니다.

  7. ==============================

    7.1.5.5 릴리스 항아리로 시도하고 그것은 나를 위해 일했다.

    1.5.5 릴리스 항아리로 시도하고 그것은 나를 위해 일했다.

    <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.5.RELEASE</version>
    

    https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-parent/1.5.5.RELEASE

  8. from https://stackoverflow.com/questions/20091177/eclipse-maven-error-archive-for-required-library-in-project-cannot-be-read-or-i by cc-by-sa and MIT license