如何研究Maven build时发生了哪些事情

113 阅读1分钟
  1. 打开Maven build的debug option:

clipboard1

  1.  观察Eclipse里的output,很快就能找到到底是哪个jar 文件实现了当前这次build:
    

clipboard2

可以按照output里的路径打开本地文件,就能找到build每一步对应的实现class。比如output里能发现build过程会包含很多validation:

clipboard3

这些validation对应的实现在本地jar包里都能找到:

clipboard4

然后用一些class文件的反编译工具就能看到source code了,比如对于本地Maven build里对于js validation的实现,
UI5 plugin里hard code了一些Window全局对象的attribute list,如果我们的代码里使用到的Window attribute不在这个list里,validation就会报message。

clipboard5
3. 对于和我们reuse project control非常相关的js merge和css merge,同理也能找到对应的实现code:

clipboard6

Js merge和css generation的实现分别在class CssGeneratorTask和JSMergeTask里。

clipboard7