Koosha Hosseiny created GOBBLIN-1226:
----------------------------------------

             Summary: Lombok should not leak into runtime dependencies.
                 Key: GOBBLIN-1226
                 URL: https://issues.apache.org/jira/browse/GOBBLIN-1226
             Project: Apache Gobblin
          Issue Type: Bug
            Reporter: Koosha Hosseiny


Lombok is a cool tool (although IMHO not worth it's troubles, considering 
generated code is harder to debug, incompatibilities in bytecode, line version 
mismatch in debugger, etc, etc) which promises to have zero runtime 
dependencies.

It is also *strongly* advised by its developers that it should be present on 
the classpath only during compilation/code generation and _not at all_, during 
runtime. (I don't have an exact reference at hand but it can be searched in the 
lombok google forum).

Lombok in runtime's classpath is considered not only a bad practice but wrong 
usage of lombok. 

The issue it caused me was that it brings an older version of guava into path.

I propose the `compile ...lombok` in `build.gradle` be changed to 
`compileOnly`. This has zero effects on any current project using gobblin.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to