programing

Jar/war에서 파일을 빠르게 삭제할 수 있는 방법이 있습니까? Jar/war를 추출하여 다시 만들지 않아도 됩니다.

minecode 2022. 10. 1. 14:14
반응형

Jar/war에서 파일을 빠르게 삭제할 수 있는 방법이 있습니까? Jar/war를 추출하여 다시 만들지 않아도 됩니다.

그래서 나는 항아리/전쟁 파일에서 파일을 삭제해야 한다.'jar-d myjar.jar file' 같은 게 있었으면 했는데I_donot_need.txt"

그러나 현재 Linux 명령줄에서 이 작업을 수행할 수 있는 유일한 방법은 (WinRAR/Winzip 또는 동등한 Linux를 사용하지 않고) 다음과 같습니다.

  • "jar -xvf"를 실행하여
    완전한 Jar 파일
  • 필요 없는 파일 삭제
  • "jar - cvf"를 사용하여 jar 파일을 재지정합니다.

좀 더 빠른 방법이 없을까요?

zip -d file.jar unwanted_file.txt

결국 jar는 zip 파일일 뿐이야확실히 압축 해제/복원보다 훨씬 빠릅니다.

서명된 jar의 서명을 해제하기 위해 파일을 삭제할 경우 를 작성하기만 하면 됩니다.RSA 파일의 사이즈가 제로입니다.이것은 단지 이 일만으로 실시할 수 있습니다.jar uhttps://stackoverflow.com/a/24678645/653539 를 참조해 주세요. (해킹은 인정하지만)

Java에서는 삭제할 jar를 제외한 jar의 모든 엔트리를 복사할 수 있습니다.즉, 복사본을 만들어야 하지만 개별 파일을 만들 필요는 없습니다.

이 작업을 수행할 수 있습니다.

  • 새 항아리를 만듭니다.
  • 네가 가지고 있는 항아리를 통해서도 반복한다.
  • 원하는 파일을 건너뛰고 한 항아리에서 다른 항아리로 엔트리를 복사합니다.
  • 필요에 따라서, Orginal 병을 닫고 교환합니다.

이 작업을 프로그램적으로 수행할 경우 Zip 파일 시스템을 사용하여 zip/jar 파일을 파일 시스템으로 처리할 수 있습니다.이를 통해 jar 파일을 편집, 삭제 및 추가할 수 있습니다.

Java를 사용하여 zip 파일에 파일 추가를 참조하십시오.

언급URL : https://stackoverflow.com/questions/4520822/is-there-a-quick-way-to-delete-a-file-from-a-jar-war-without-having-to-extract

반응형