Re: Maven Extension Idea: iJar support

2017-10-04 Thread Thomas Broyer
See https://melix.github.io/javaone-2017-max-incremental/ for how Gradle does it (and so it uses it not only for incremental compilation, but also compilation avoidance). Bazel's ijars are a similar mechanism to avoid unnecessary work. On Wed, Oct 4, 2017 at 5:19 PM Thomas Broyer

Re: Maven Extension Idea: iJar support

2017-10-04 Thread Thomas Broyer
AFAIK, the ijar (for "interface jar") is a standard JAR, with standard *.class files *except* that the method bodies and private members have been stripped out (and timestamps are normalized too). That way, if you change a method implementation, or a private member (add/remove private field or

Re: Maven Extension Idea: iJar support

2017-10-04 Thread Russell Gold
Does this iJar have more information than a regular JAR? If not, what is the benefit? If so, where is this information coming from? The closest thing I can think of is the new Java 9 module system, which defines what is visible; presumably, that information would be useful in such a

Re: Maven Extension Idea: iJar support

2017-10-04 Thread Jochen Wiedmann
On Wed, Oct 4, 2017 at 6:38 AM, Farid Zakaria > Could this be done as a maven extension? What exactly would you like to have? - Creating the "iJar" (Would need a specification first, IMO, which might be obtained from Bazel.) - Support for using the "iJar" in the dependency checking, as you

Maven Extension Idea: iJar support

2017-10-03 Thread Farid Zakaria
I was combing through Bazel (google's build tool) and found a concept called iJar iJar is basically a stripped out version of the Jar removing everything but the public method signatures (very stripped out