JarFile jfile = new JarFile( jarpath );创建对象时报错。
发布网友
发布时间:2022-05-06 18:10
我来回答
共2个回答
热心网友
时间:2022-07-01 16:59
/**
* Creates a new <code>JarFile</code> to read from the specified
* file <code>name</code>. The <code>JarFile</code> will be verified if
* it is signed.
* @param name the name of the jar file to be opened for reading
* @throws IOException if an I/O error has occurred
* @throws SecurityException if access to the file is denied
* by the SecurityManager
*/
public JarFile(String name) throws IOException {
this(new File(name), true, ZipFile.OPEN_READ);
}
/**
* Creates a new <code>File</code> instance by converting the given
* pathname string into an abstract pathname. If the given string is
* the empty string, then the result is the empty abstract pathname.
*
* @param pathname A pathname string
* @throws NullPointerException
* If the <code>pathname</code> argument is <code>null</code>
*/
public File(String pathname) {
if (pathname == null) {
throw new NullPointerException();
}
this.path = fs.normalize(pathname);
this.prefixLength = fs.prefixLength(this.path);
}
从源码中就能看出来JarFile的 JarFile(String name) 构造就只能传单个文件路径,你传入的那么多jar包路径(还用;分割)能找到才怪
热心网友
时间:2022-07-01 16:59
FileNotFoundException 很明显了,文件未找到。追问是的,都是jdk自带的jar包,路径没有问题,所以为何找不到?
string jarpath = "C:\Program Files\Java\jre\lib\resources.jar"
JarFile jfile = new JarFile( jarpath )
单个jar包是正确的。
JarFile jfile = new JarFile( jarpath );创建对象时报错。
} this.path = fs.normalize(pathname); this.prefixLength = fs.prefixLength(this.path);}从源码中就能看出来JarFile的 JarFile(String name) 构造就只能传单个文件路径,你传入的那么多jar包路径(还用;分割)能找到才怪
如何分布式运行mapreduce程序
第一点就是: windows上执行mapreduce,必须打jar包到所有slave节点才能正确分布式运行mapreduce程序。(我有个需求是要windows上触发一个mapreduce分布式运行)第二点就是: Linux上,只需拷贝jar文件到集群master上,执行命令hadoop jarPackage.jar MainClassName即可分布式运行mapreduce程序。第三点就是: ...