package text;
import java.io.File;
import java.util.ArrayList;
import java.util.Enumeration;
import java.util.List;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
public class testFindJar {
public String className;
public ArrayList jarFiles = new ArrayList();
public testFindJar() {
}
public testFindJar(String className) {
this.className = className;
}
public void setClassName(String className) {
this.className = className;
}
public List findClass(String dir, boolean recurse) {
searchDir(dir, recurse);
return this.jarFiles;
}
protected void searchDir(String dir, boolean recurse) {
try {
File d = new File(dir);
if (!d.isDirectory()) {
return;
}
File[] files = d.listFiles();
for (int i = 0; i < files.length; i++) {
if (recurse && files[i].isDirectory()) {
searchDir(files[i].getAbsolutePath(), true);
} else {
String filename = files[i].getAbsolutePath();
if (filename.endsWith(".jar")||filename.endsWith(".zip")) {
ZipFile zip = new ZipFile(filename);
Enumeration entries = zip.entries();
while (entries.hasMoreElements()) {
ZipEntry entry = (ZipEntry) entries.nextElement();
String thisClassName = getClassName(entry);
if (thisClassName.equals(this.className) || thisClassName.equals(this.className + ".class")) {
this.jarFiles.add(filename);
}
}
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
public List getFilenames() {
return this.jarFiles;
}
protected String getClassName(ZipEntry entry) {
StringBuffer className = new StringBuffer(entry.getName().replace('/','.'));
return className.toString();
}
public static void main(String args[]) {
//根据类查找其所在的jar包
testFindJar findInJar = new testFindJar("com.ailk.filter.CommonFilter");
List jarFiles = findInJar.findClass("E:/workspace/newlianc/wadelib_sale/web/WEB-INF/lib", true);
if (jarFiles.size() == 0) {
System.out.println("Not Found");
} else {
for (int i = 0; i < jarFiles.size(); i++) {
System.out.println(jarFiles.get(i));
}
}
}
}
相关推荐
exe工具,根据类名,查找本地中包含该类名的jar包。原来项目中的jar包太多了,手动找起来太麻烦,网上找了很多工具也都没有用,所以自己动手写了一个。 只要输入import引入的包名,和本地中jar包的地址就可以查找到...
一个java工程,修改两个变量值,运行就可以知道,你java文件中使用的引入类是来自哪个jar包。
从选定的目录里面,查找出所有包含所指定的Java Class类的Jar包。 -------------------------------------------------------------------------- 使用方法: 1、请首先输入需要查找的Java Class类,需要输入完整的...
eclips插件,用于查找某个class所在的jar包
用户可以不用打开Jar包,直接输入路径和要查找的文件即可搜索。 2.列出指定路径下的所有Jar包文件 3.除了对Jar包进行搜索分析外,还可以对zip包进行分析 4.填写搜索路径是最好不要只填写“E:/”根盘目录 5.建议将...
Java源代码,用于在jar包中查找包和类。
该工具可以从jar包或者目录中查找指定的类的位置。可以根据调试代码时的异常类的名称快速查找到所在的jar包。
一个查找类的小工具 主要有两个用途: 1.检索类所在的文件(一般为.jar)。然后就可以把它加到classpath中。 2.检索类的包路径。在仅知道类名的情况下,检索出类的包路径,然后就可以正确书写import指令。
SpringBoot+SSM生成的jar包发布到docker,如果不是SpringBoot,则需要配置tomcat
打开JarFinder,选择jar包所在路径,输入自己想要查看的封装类名,点击查询找到所在的具体位置。运行jd-gui.exe 并将要反编译的类拖进操作界面即可。
根据类名查询所在jar包,方便项目集成时查找冲突jar包。
在Jar文件里查找对应的类名。双击弹出界面后,点击“查询路径”,把Jar所在目录选上后,在“查询类名”中填写检索词
从选定的目录里面,查找出所有包含所指定的Java Class类的Jar包。 -------------------------------------------------------------------------- 使用方法: 1、请首先输入需要查找的Java Class类,需要输入完整的...
这是一个查找class文件所在的jar包的小工具。 支持文件的模糊查询。
当应用hudson一类的自动化平台来构建Eclipse插件时,不能直接调用ANT工具来编译。本工具自动修改Eclipse的路径为 ${ECLIPSE_HOME},并且自动可查找相应插件。 使用方法: java -jar buildfileGenerator.jar build....
很轻松的查找对应的class所在的哪个jar包内,只需要输入class和jar包所在的lib目录里
选定目录可以在该目录下面查找class所在的jar包。
将unused-dep.jar文件复制到gradle包装器( gradlew文件)所在的根目录中,然后运行以下命令: java -jar unused-dep.jar -gradletask :app:assembleDebug 用您的Android项目中使用的任何gradle任务替换:app:...
Xshel上传文件:安装rz指令:yum install lrzsz 执行:rz 默认上传至:当前所在目录 解压缩文件:tar -xvf 安装包文件路径 -C 安装路径 Linux下打包压缩war、解压war包和jar命令:jar -xvf project.war /project_a ...
名字的局部变量,就使用该变量,如果不存在,则到该方法所在的内部类中查找是否存在该名字的属性,如果存在 则使用该属性。 •总之,第一步先找局部变量,第二步,内部类的属性,第三步。外部类的属性。 ...