JarOutputStream을 사용하여 JAR 파일 생성: 숨겨진 문제 해결
JAROutputStream 유틸리티는 프로그래밍 방식으로 JAR 파일을 생성하는 데 간단해 보이지만 문서화되지 않은 몇 가지 문제가 있습니다. 이는 생성된 아카이브의 무결성을 손상시킬 수 있습니다. 이러한 이상한 점은 다음 세 가지 특정 영역에서 나타납니다.
JAR 생성이 제대로 이루어지도록 하려면 다음 지침을 따르세요.
<code class="java">public void run() throws IOException { Manifest manifest = new Manifest(); // ... (populate manifest) JarOutputStream target = new JarOutputStream( new FileOutputStream("output.jar"), manifest ); add(new File("inputDirectory"), target); target.close(); } private void add(File source, JarOutputStream target) throws IOException { String name = source.getPath().replace("\", "/"); if (source.isDirectory()) { if (!name.endsWith("/")) { name += "/"; } JarEntry entry = new JarEntry(name); // ... (set entry properties) target.putNextEntry(entry); target.closeEntry(); for (File nestedFile : source.listFiles()) { add(nestedFile, target); } } else { JarEntry entry = new JarEntry(name); // ... (set entry properties) target.putNextEntry(entry); try (BufferedInputStream in = new BufferedInputStream(new FileInputStream(source))) { // ... (write file to JAR entry) } target.closeEntry(); } }</code>
By 이러한 지침을 준수하면 의도한 대로 추출되고 작동하는 JAR 파일을 정확하게 생성할 수 있습니다.
위 내용은 JarOutputStream을 사용하여 JAR 파일을 생성할 때 숨겨진 문제를 피하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!