过一段时间,会去跟调试一个java项目。但是乙方不提供源代码。只有jar文件,这能学到东西吗

IteliJ IDEA自带反编译,而且反编译的代码可debug
■网友
1月3日update:到公司看了一下用的反编译工具的名字叫做 jd_gui.exe 希望能帮到你我也遇到同样的问题,首先明确的一点就是提供的库代码当然不能随意更改,库文件代码由别人维护更新,别人迭代一个版本你过去写的代码跑不起来怎么办?你应该尽量适配提供的接口方法参数格式,没有源文件没关系,弄个java反编译工具很容易得到完整注释的源文件,如果想多学东西也要在完成该做的事情以后,熟悉开发环境然后理解各种架构的设计原理。by 一个新入职一个月渣渣程序员
■网友
1、反编译得到源码,在此基础上学到乙方的实现,并开发自己的软件。
2、如果对方提供接口和文档可在其上进行二次开发,比如根据业务逻辑进行组合功能,设计更易用的界面等。取决于对方的接口是否足够开放和完善。
【过一段时间,会去跟调试一个java项目。但是乙方不提供源代码。只有jar文件,这能学到东西吗】 3、如果上述二者都没法做,那就是一个坑活,主要时间都用来找对方解决问题,对技术提升不大。

■网友
可以使用Java Decompiler反编译JAR文件得到JD分析后的源码,可读性一般都不错。也可以选择jclasslib,这工具也挺强大的。在有混淆的情况下也可以使用以上两款工具,但是读起来会比较困难,需要有比较丰富的JAVA逆向经验和扎实的JAVA基础。上面说的一切的基础是要会JAVA。可以对JAR反编译后阅读分析的源码然后自己再实现一遍,这就要比较好的JAVA基础了。实在不行可以找JAVA逆向方面的专业人士给你逆向成项目形式的源码,但是这个成本可能比较高。
■网友
会基础吗?


    推荐阅读