[ 
https://issues.apache.org/jira/browse/KUDU-3677?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18011014#comment-18011014
 ] 

ASF subversion and git services commented on KUDU-3677:
-------------------------------------------------------

Commit 35fce9ba24b2e376c65fd7a2c50a65ec0a33e02f in kudu's branch 
refs/heads/master from Abhishek Chennaka
[ https://gitbox.apache.org/repos/asf?p=kudu.git;h=35fce9ba2 ]

[Java] KUDU-3677: Fix optional dependencies

This update removes compileUnshaded dependencies from the generated POM and 
re-adds them with
compile scope, including any defined exclusions without the optional 
configuration attribute.

We now use project.configurations.findByName("compileUnshaded") instead of 
direct access to
avoid Could not get unknown property 'compileUnshaded' errors when the 
configuration is not
defined.

Change-Id: I5b7593f595b64082d86fb64cbe8f38ff9b2ccb88
Reviewed-on: http://gerrit.cloudera.org:8080/23205
Reviewed-by: Zoltan Chovan <[email protected]>
Tested-by: Abhishek Chennaka <[email protected]>
Reviewed-by: Alexey Serbin <[email protected]>


> Java kudu-client incorrectly declares com.stumbleupon:async as optional
> -----------------------------------------------------------------------
>
>                 Key: KUDU-3677
>                 URL: https://issues.apache.org/jira/browse/KUDU-3677
>             Project: Kudu
>          Issue Type: Bug
>          Components: java
>    Affects Versions: 1.18
>            Reporter: James Netherton
>            Assignee: Alexey Serbin
>            Priority: Blocker
>
> There was a change in the Java kudu-client pom.xml between the 1.17.1 and 
> 1.18.0 with regards to how dependency com.stumbleupon:async is declared.
> *1.17.1*
> {code:java}
> <dependency>
>   <groupId>com.stumbleupon</groupId>
>   <artifactId>async</artifactId>
>   <version>1.4.1</version>
>   <scope>compile</scope>
>   <exclusions>
>     <exclusion>
>       <artifactId>slf4j-api</artifactId>
>       <groupId>org.slf4j</groupId>
>     </exclusion>
>   </exclusions>
> </dependency>
> {code}
> *1.18.0*
> {code:java}
> <dependency>
>   <groupId>com.stumbleupon</groupId>
>   <artifactId>async</artifactId>
>   <version>1.4.1</version>
>   <scope>compile</scope>
>   <exclusions>
>     <exclusion>
>       <groupId>org.slf4j</groupId>
>       <artifactId>slf4j-api</artifactId>
>     </exclusion>
>   </exclusions>
>   <optional>true</optional>
> </dependency>
> {code}
> Note the addition of <optional> in 1.18.0.
> Looking at the code from KuduClient and AsyncKuduClient, there are various 
> references to Deferred & Callback types. If you try to invoke methods that 
> use those types, then you'll get ClassNotFoundException. Unless you add the 
> missing com.stumbleupon:async dependency to the classpath.
> Can the previous non-optional dependency declaration be restored for future 
> releases?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to