Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
第三方库(JAR)在调试模式(Java)下不工作_Java_Debugging_Jvm_Jvm Hotspot - Fatal编程技术网

第三方库(JAR)在调试模式(Java)下不工作

第三方库(JAR)在调试模式(Java)下不工作,java,debugging,jvm,jvm-hotspot,Java,Debugging,Jvm,Jvm Hotspot,在我的java项目中,我使用第三方库(jar),并在开始时调用该库的函数 public static void main(String args[]) { long handle = Library.method(params); if (0 == handle) { // error } } 使用eclipse进行开发。问题是,当我在运行模式下运行项目(调用main)时,我得到了句柄。但是当我使用调试模式(没有任何断点)调用时,我没有得到句柄。(运行/调试设置相

在我的java项目中,我使用第三方库(jar),并在开始时调用该库的函数

public static void main(String args[]) {
   long handle = Library.method(params);
   if (0 == handle) {
      // error
   }
}
使用eclipse进行开发。问题是,当我在运行模式下运行项目(调用main)时,我得到了句柄。但是当我使用调试模式(没有任何断点)调用时,我没有得到句柄。(运行/调试设置相同,没有其他VM或程序参数)

问题:

  • 库如何检测在调试模式下调用它,以及 防止退回手柄
  • 如何调试此项目(我需要 一些(调试)
库如何检测在调试模式下调用它并防止返回句柄

有几种方法,例如:

但是,要收集完整的可能性清单肯定是不可能的

如何调试此项目(我需要一些调试)

您要么需要找到一个可调试的版本(可能需要从库的开发人员那里获得额外的费用?),要么需要克服保护


例如,一个人我知道谁不是我,他会首先尝试分解这个库,找出它实际上是如何受到保护的。如果反汇编成功,则甚至可能删除保护。

您能命名该库吗?它是一个用于许可证保护和基于软件的加密狗的商业库,我认为在这里命名它不是一个好主意。对不起。我在这里找到了答案。我在答案中引用了这个问题。对不起,我没有看到。好的,标记为有用且被接受的答案。