
org.nutz.resource.JarEntryInfo Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of nutz Show documentation
Show all versions of nutz Show documentation
Nutz, which is a collections of lightweight frameworks, each of them can be used independently
package org.nutz.resource;
import java.io.IOException;
public class JarEntryInfo {
public String getEntryName() {
return entryName;
}
public String getJarPath() {
return jarPath;
}
public JarEntryInfo setEntryName(String entryName) {
this.entryName = entryName;
return this;
}
public JarEntryInfo setJarPath(String jarPath) {
this.jarPath = jarPath;
return this;
}
@Override
public String toString() {
return String.format("%s!/%s", jarPath, entryName);
}
private String entryName;
private String jarPath;
public JarEntryInfo() {}
/**
* 从一个包含 jar 的全路径里,截取 jar 文件的路径,以及 Entry的path。
*
* Mac / Linux / Windows jar 文件的路径的分隔符号略有不同
*
* - Windows - file:\D:\a\b\c\xyz.jar!\m\n\T.class
*
*
* @param path
* 文件全路径
*
* @throws IOException
*/
public JarEntryInfo(String path) {
path = path.replace('\\', '/');
int posL = path.indexOf("file:");
posL = posL < 0 ? 0 : posL + "file:".length();
int posR = path.indexOf(".jar!") + ".jar!".length();
this.jarPath = path.substring(posL, posR - 1);
this.entryName = path.substring(posR + 1);
}
public JarEntryInfo(String jarPath, String entryName) {
this.jarPath = jarPath;
this.entryName = entryName;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy