You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@drill.apache.org by J Prabhu <j....@ericsson.com> on 2015/01/20 11:49:00 UTC

Drill Compilation fails

Trying to compile RpcBus source file in Drill which expects both shaded 
drill-protocol-0.7.0-rebuffed.jar and protobuf-java-2.5.0.jar, fails 
with below error.

emprstw@66WQ7R1:~/DRILL/apache-drill-0.7.0/jars$ javac -cp 
"/home/emprstw/DRILL/apache-drill-0.7.0/jars/3rdparty/*:/home/emprstw/DRILL/apache-drill-0.7.0/jars/*:/home/emprstw/DRILL/apache-drill-0.7.0/PROTOBUF/*" 
RpcBus.java
RpcBus.java:88: error: method checkSend in class RpcConfig cannot be 
applied to given types;
       assert rpcConfig.checkSend(rpcType, protobufBody.getClass(), clazz);
                       ^
   required: 250.com.google.protobuf.Internal.EnumLite,Class<?>,Class<?>
   found: T,Class<CAP#1>,Class<RECEIVE>
   reason: actual argument T cannot be converted to 
250.com.google.protobuf.Internal.EnumLite by method invocation conversion
   where T,RECEIVE,SEND,C are type-variables:
     T extends com.google.protobuf.Internal.EnumLite declared in class 
RpcBus
     RECEIVE extends MessageLite declared in method 
<SEND,RECEIVE>send(RpcOutcomeListener<RECEIVE>,C,T,SEND,Class<RECEIVE>,boolean,ByteBuf...)
     SEND extends MessageLite declared in method 
<SEND,RECEIVE>send(RpcOutcomeListener<RECEIVE>,C,T,SEND,Class<RECEIVE>,boolean,ByteBuf...)
     C extends RemoteConnection declared in class RpcBus
   where CAP#1 is a fresh type-variable:
     CAP#1 extends MessageLite from capture of ? extends MessageLite
RpcBus.java:92: error: no suitable constructor found for 
OutboundRpcMessage(RpcMode,T,int,SEND,ByteBuf[])
       OutboundRpcMessage m = new OutboundRpcMessage(RpcMode.REQUEST, 
rpcType, futureListener.getCoordinationId(), protobufBody, dataBodies);
                              ^
     constructor 
OutboundRpcMessage.OutboundRpcMessage(RpcMode,int,int,250.com.google.protobuf.MessageLite,ByteBuf...) 
is not applicable
       (actual argument T cannot be converted to int by method 
invocation conversion)
     constructor 
OutboundRpcMessage.OutboundRpcMessage(RpcMode,250.com.google.protobuf.Internal.EnumLite,int,250.com.google.protobuf.MessageLite,ByteBuf...) 
is not applicable
       (actual argument T cannot be converted to 
250.com.google.protobuf.Internal.EnumLite by method invocation conversion)
   where T,SEND,RECEIVE,C are type-variables:
     T extends com.google.protobuf.Internal.EnumLite declared in class 
RpcBus
     SEND extends com.google.protobuf.MessageLite declared in method 
<SEND,RECEIVE>send(RpcOutcomeListener<RECEIVE>,C,T,SEND,Class<RECEIVE>,boolean,ByteBuf...)
     RECEIVE extends com.google.protobuf.MessageLite declared in method 
<SEND,RECEIVE>send(RpcOutcomeListener<RECEIVE>,C,T,SEND,Class<RECEIVE>,boolean,ByteBuf...)
     C extends RemoteConnection declared in class RpcBus
2 errors



Can anyone help me to solve this.






Re: Drill Compilation fails

Posted by Alexander Zarei <al...@gmail.com>.
So are you pulling the source code from Github and building by Maven? Could
you please provide more detail on your environment and the steps your
following to compile the code?

Thanks,
Alex

On Tue, Jan 20, 2015 at 2:49 AM, J Prabhu <j....@ericsson.com> wrote:

>
> Trying to compile RpcBus source file in Drill which expects both shaded
> drill-protocol-0.7.0-rebuffed.jar and protobuf-java-2.5.0.jar, fails with
> below error.
>
> emprstw@66WQ7R1:~/DRILL/apache-drill-0.7.0/jars$ javac -cp
> "/home/emprstw/DRILL/apache-drill-0.7.0/jars/3rdparty/*:/
> home/emprstw/DRILL/apache-drill-0.7.0/jars/*:/home/
> emprstw/DRILL/apache-drill-0.7.0/PROTOBUF/*" RpcBus.java
> RpcBus.java:88: error: method checkSend in class RpcConfig cannot be
> applied to given types;
>       assert rpcConfig.checkSend(rpcType, protobufBody.getClass(), clazz);
>                       ^
>   required: 250.com.google.protobuf.Internal.EnumLite,Class<?>,Class<?>
>   found: T,Class<CAP#1>,Class<RECEIVE>
>   reason: actual argument T cannot be converted to 250.com.google.protobuf.Internal.EnumLite
> by method invocation conversion
>   where T,RECEIVE,SEND,C are type-variables:
>     T extends com.google.protobuf.Internal.EnumLite declared in class
> RpcBus
>     RECEIVE extends MessageLite declared in method <SEND,RECEIVE>send(
> RpcOutcomeListener<RECEIVE>,C,T,SEND,Class<RECEIVE>,boolean,ByteBuf...)
>     SEND extends MessageLite declared in method <SEND,RECEIVE>send(
> RpcOutcomeListener<RECEIVE>,C,T,SEND,Class<RECEIVE>,boolean,ByteBuf...)
>     C extends RemoteConnection declared in class RpcBus
>   where CAP#1 is a fresh type-variable:
>     CAP#1 extends MessageLite from capture of ? extends MessageLite
> RpcBus.java:92: error: no suitable constructor found for
> OutboundRpcMessage(RpcMode,T,int,SEND,ByteBuf[])
>       OutboundRpcMessage m = new OutboundRpcMessage(RpcMode.REQUEST,
> rpcType, futureListener.getCoordinationId(), protobufBody, dataBodies);
>                              ^
>     constructor OutboundRpcMessage.OutboundRpcMessage(RpcMode,
> int,int,250.com.google.protobuf.MessageLite,ByteBuf...) is not applicable
>       (actual argument T cannot be converted to int by method invocation
> conversion)
>     constructor OutboundRpcMessage.OutboundRpcMessage(RpcMode,
> 250.com.google.protobuf.Internal.EnumLite,int,250.com.
> google.protobuf.MessageLite,ByteBuf...) is not applicable
>       (actual argument T cannot be converted to 250.com.google.protobuf.Internal.EnumLite
> by method invocation conversion)
>   where T,SEND,RECEIVE,C are type-variables:
>     T extends com.google.protobuf.Internal.EnumLite declared in class
> RpcBus
>     SEND extends com.google.protobuf.MessageLite declared in method
> <SEND,RECEIVE>send(RpcOutcomeListener<RECEIVE>,C,
> T,SEND,Class<RECEIVE>,boolean,ByteBuf...)
>     RECEIVE extends com.google.protobuf.MessageLite declared in method
> <SEND,RECEIVE>send(RpcOutcomeListener<RECEIVE>,C,
> T,SEND,Class<RECEIVE>,boolean,ByteBuf...)
>     C extends RemoteConnection declared in class RpcBus
> 2 errors
>
>
>
> Can anyone help me to solve this.
>
>
>
>
>
>