Gradle 아카이브에 65535개가 넘는 항목이 포함
맵리듀스 작업 및 spring-boot-1.2.7 릴리스를 실행하기 위해 hadoop 2.5.0을 통합하고 있으며 이를 포함하는 동안 오류가 발생합니다.
아카이브에 65535개 이상의 항목이 포함되어 있습니다.
나의 gradle jar 의존성
jar{
from configurations.compile.collect { it.isDirectory() ? it : zipTree(it) }
병에 zip64 포함
jar{
zip64=true
from configurations.compile.collect { it.isDirectory() ? it : zipTree(it) }
잘못된 파일 또는 손상된 파일을 가져오는 중
섀도 추가 시 오류가 발생합니다.
shadowJar{
zip64=true
}
org.springframework.boot.loader에서 바이트를 읽을 수 없습니다.실행 파일 보관 시작 프로그램
모든 의존성 중에서 어떻게 하나의 병을 만들어야 합니까?
이 질문에 대한 답변은 이미 댓글로 작성되었습니다. 질문자가 직접 제공한 관련 기사는 다음과 같습니다.
http://stackoverflow.com/questions/10405970/ 과 http://github.com/spring-projects/spring-boot/issues/1310 을 사용하여 문제를 해결해 주셔서 감사합니다. 제공된 대로 hbase와 hadoop을 추가했습니다.jar{}에서 zip64를 제거했습니다.
SO 답변의 주요 부분은 다음과 같습니다.
현재 가장 좋은 해결책은 자신의 것을 선언하는 것입니다.
provided
컴파일 전용 종속성을 포함하고 컴파일 클래스 경로에 추가하는 구성
Github은 이와 중복되는 것으로 보이며, 여기에 핵심적인 세부 사항이 추가됩니다.
저는 모든 하위 프로젝트의 항아리 작업에 다음과 같은 내용을 추가하고 항아리를 절약했습니다.
bootRepackage.enabled = false
언급URL : https://stackoverflow.com/questions/34835834/gradle-archive-contains-more-than-65535-entries
'programing' 카테고리의 다른 글
쿼리에서 트랜잭션을 언제 사용해야 합니까? (0) | 2023.07.27 |
---|---|
jQuery 5초 동안 표시한 다음 숨깁니다. (0) | 2023.07.27 |
방법을 이해합니다.내부 C 함수는 R에서 처리됩니다. (0) | 2023.07.22 |
C 프로그램에서 C++로 만든 공유 라이브러리를 사용할 수 있습니까? (0) | 2023.07.22 |
Firebase 3에서 토큰에 대한 서버 측 검증이 여전히 가능합니까? (0) | 2023.07.22 |