大佬教程收集整理的这篇文章主要介绍了如何使用JarOutputStream创建JAR文件?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
事实证明,这JarOutputStream有三个未记录的怪癖:
这是创建Jar文件的正确方法:
public voID run() throws IOException
{
Manifest manifest = new Manifest();
manifest.getMainAttributes().put(Attributes.name.MANIFEST_VERSION, "1.0");
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
{
BufferedinputStream in = null;
try
{
if (source.isDirectory())
{
String name = source.getPath().replace("\\", "/");
if (!name.isEmpty())
{
if (!name.endsWith("/"))
name += "/";
JarEntry entry = new JarEntry(Name);
entry.setTime(source.lastModifIEd());
target.putNextEntry(entry);
target.closeEntry();
}
for (file nestedfile: source.Listfiles())
add(nestedfile, target);
return;
}
JarEntry entry = new JarEntry(source.getPath().replace("\\", "/"));
entry.setTime(source.lastModifIEd());
target.putNextEntry(entry);
in = new BufferedinputStream(new fileinputStream(sourcE));
byte[] buffer = new byte[1024];
while (true)
{
int count = in.read(buffer);
if (count == -1)
break;
target.write(buffer, 0, count);
}
target.closeEntry();
}
finally
{
if (in != null)
in.close();
}
}
如何使用程序以编程方式创建JAR文件java.util.jar.JarOutputStream?我的程序生成的JAR文件看起来正确(提取得很好),但是当我尝试从中加载库时,Java抱怨说它找不到明显存储在其中的文件。如果我提取JAR文件并使用Sun的jar命令行工具对其进行重新压缩,则生成的库可以正常工作。简而言之,我的JAR文件有问题。
请说明如何以编程方式创建清单文件以及完整的JAR文件。
以上是大佬教程为你收集整理的如何使用JarOutputStream创建JAR文件?全部内容,希望文章能够帮你解决如何使用JarOutputStream创建JAR文件?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。