我编写了一个Java程序,并将其编译为jar文件,作为库分发,其他人可以将其导入Java程序并使用它。这是一种简单的图书馆。问题是,当将jar文件导入Netbeans并在程序中使用它时,源代码是完全可见的。他们可以打开jar文件中的类并查看所有源代码。Netbeans是反编译源代码还是这是怎么可能的?是否有一种方法可以防止用户在Netbeans或任何其他IDE中看到源代码?
是的,Netbeans很可能预装了一个反编译器插件,你唯一能做的就是用ProGuard这样的工具混淆jar中的所有类。
他们仍然能够反编译你的类,但是要理解你的代码实际上在做什么(很大程度上依赖于你的代码的复杂性)会更加困难。遗憾的是,您不能简单地阻止反编译。
我发现,当将jar导入到开发jar本身的同一台机器上的项目中时,就会发生这种情况。我把jar文件带到另一台PC上并将其导入到一个项目中,唉,代码是不可见的。它为什么会这样让人困惑。我希望它无论如何都不应该显示代码。谢谢你的回复。