`

运行时获取Class所在 jar

阅读更多

随着项目规模增大,以来越来越多,常出现些莫名其妙的问题,例如NoClassDefFoundError、NoSuchMethodError等等;此时打开JAR看代码都没问题...

以上问题基本是由JAR冲突导致的,ClassLoader所加载的Class不是来自预期的JAR;所以首要是找出当前问题类来自哪个JAR,然后考虑删除、合并或者重新编译打包。

 

实现代码:

this.getClass().getResource("/org/bouncycastle/openssl/jcajce/JcaMiscPEMGenerator.class")

  

输出:

jar:file:/home/gateway/lib/bcpkix-jdk15on-1.64.jar!/org/bouncycastle/openssl/jcajce/JcaMiscPEMGenerator.class

分享到:
评论

相关推荐

    jar在命令行下运行空指针异常解决

    3. **设置CLASSPATH**:虽然现代IDE和构建工具大多能够自动管理类路径,但在命令行中手动运行JAR时,可能需要显式指定类路径。例如: ```plaintext java -classpath .;path/to/your/jarfile.jar ...

    在Java程序中获取当前运行程序的路径

    最后,如果需要获取JAR文件所在的路径(尤其是当程序被打包成JAR时),可以使用`java.lang.instrument.Instrumentation`接口,但这个通常需要在启动时传递特殊参数 `-javaagent` 来启用。不过,在一般应用中,`...

    JAR包查看器

    1. **调试与故障排除**:当Java应用程序出现错误时,开发者可以通过查看JAR包中的类文件和资源来找出问题所在。 2. **学习库的内部工作原理**:对于开源库,虽然可以获取源代码,但如果只有JAR包,使用查看器可以...

    jar文件查看工具

    1. **运行工具**: 将`jd_tool.exe`放在操作系统路径环境变量所包含的目录下,或直接在文件所在目录运行。 2. **打开jar文件**: 在工具的界面中选择“打开”或“导入”功能,找到目标`jar`文件。 3. **浏览内容**: ...

    sql oracle数据库连接jar包

    1. 添加依赖:将这些jar文件添加到项目的类路径中,确保运行时系统能够找到并加载它们。 2. 导入必要的包:在Java源代码中,需要导入如`java.sql.Connection`,`java.sql.DriverManager`,`java.sql....

    jar包反编译工具,jar包反编译工具

    在开发过程中,有时我们可能需要查看jar包内的源代码或.class字节码文件,特别是在处理第三方库或者遇到无法理解的运行时问题时。`jar包反编译工具`就是为了解决这类需求而存在的。 `jd-gui`是一款常用的Java反编译...

    Java程序打成Jar包做成EXE安装程序

    需要注意的是,Class-Path项中“.”指程序运行目录,即导出的JAR包所在目录。程序运行时依据Class-Path项的设置路径来查找支持库。每一个支持库之间用空格隔开。在这里使用了hibernate、spring、derby。 另外,需要...

    jar包-8.0以及8.0以下版本.zip

    在运行时,确保JAR文件的路径正确,并且所有依赖项都已就绪。 8. **调试与日志**:如果遇到问题,开启调试模式和日志记录可以帮助识别问题所在。许多JAR包会提供日志输出,以便追踪程序运行过程中的异常和错误。 ...

    通过java的反射技术获取,某个包路径下的类,并以表格形式打印类的属性注解注释及属性名称等

    Java反射技术是Java编程语言中的一个强大工具,它允许运行中的Java程序对自身进行检查并且可以直接操作程序的内部属性。这个技术主要基于Java.lang.reflect包中的类和接口,如Class、Constructor、Method和Field等。...

    dex2jar反编译工具

    4. **运行dex2jar**:将解压出来的.dex文件复制到dex2jar工具所在的目录。然后在命令行中定位到该目录,运行`dex2jar.bat`脚本,通常命令格式为`dex2jar classes.dex`。这将生成一个名为`classes_dex2jar.jar`的文件...

    dse加密所需jar包

    这可以通过在运行Java应用时指定 `-classpath` 或设置 `JAVA_HOME/jre/lib/ext` 目录来实现。一旦引入,你可以使用Java的`javax.crypto`包中的类和接口来执行加密和解密操作。例如,`Cipher`类用于加解密,`...

    android 动态加载jar代码

    在Android开发中,动态加载jar代码是一种常见的技术,它允许应用程序在运行时加载新的功能或者更新已有代码,而无需重新安装整个应用。这种方式可以提高应用的灵活性和可维护性,尤其是在处理大型应用或需要频繁更新...

    kettle连接sqlserver连不上-jtds.jar包

    - SQL Server服务是否运行:确保数据库服务器正在运行并接受连接。 - 防火墙设置:确认防火墙没有阻止Kettle访问SQL Server的端口。 - 驱动兼容性:确保jtds.jar版本与你的SQL Server版本兼容。 - JDBC URL格式:...

    JAVA反编译包_小茶杯_jd-gui-1.6.6.jar.7z

    2. **运行JD-GUI**:找到解压后的jd-gui-1.6.6.jar文件,双击运行,或在命令行使用`java -jar jd-gui-1.6.6.jar`命令启动。 3. **加载类文件**:在JD-GUI界面中,点击“Open”按钮,选择需要反编译的.class文件。 ...

    dex2jar-0.0.9.8

    2. **运行dex2jar**:将.class.dex文件拷贝到dex2jar.bat所在的目录下,确保.bat文件是可执行的。在Windows环境下,你可以直接将.dex文件拖放到.dex2jar.bat上,工具会自动执行转换过程,生成一个名为classes.dex....

    com.google.zxing两个jar的包

    2. **导入到Eclipse项目**:在Eclipse中,右键点击项目,选择“Build Path” -> "Configure Build Path" -> "Libraries" -> "Add Jars",然后导航到JAR文件所在的位置并选择它们。这将确保在编译和运行时,你的项目...

    android 混淆出错 Can't process class 解决办法

    同时,通过调试模式运行ProGuard,可以获取更详细的错误信息。 在`proguard修改后`的文件中,你应该能看到对这些问题的修复和调整。例如,可能增加了保留特定类或方法的规则,或者解决了类路径问题。对于每一个出错...

    查看.jar文件工具

    这些文件通过一个清单文件(MANIFEST.MF)进行组织,清单文件记录了关于.jar文件的基本信息,如主类(Main-Class)等,这对于运行Java应用是必需的。 使用"查看.jar文件工具",你可以: 1. 浏览文件列表:查看.jar...

    eclipse反编译.class文件

    在Java开发环境中,Eclipse是一款广泛使用的集成开发环境(IDE),它提供了丰富的功能,包括代码编写、调试和项目管理等。...在遇到无法直接获取源代码的库或框架时,反编译可以提供宝贵的洞察力。

Global site tag (gtag.js) - Google Analytics