You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by Dhwani Katagade <dh...@persistent.co.in> on 2017/01/03 18:45:09 UTC

Build problems in Eclipse dev environment setup

Hi,

I am trying to setup the eclipse dev environment on trunk. I have 
followed the instructions given here
https://github.com/apache/kafka/blob/trunk/README.md
https://cwiki.apache.org/confluence/display/KAFKA/Developer+Setup#DeveloperSetup-Eclipsesetup

After I run ./gradlew eclipse in the command line followed by "Import 
existing projects into workspace" in Eclipse, I am able to see the 
projects. But I see the following build errors in Eclipse.

Description: The import kafka.utils.ShutdownableThread cannot be resolved
Resource: Consumer.java
Path: /kafka-examples/src/main/java/kafka/examples
Location: line 19
Type: Java Problem

There are other errors as well but they are of a similar nature and 
others dependent on them. I can see the class ShutdownableThread in core 
and core is compiled properly. The examples project has core setup as  
dependency project which seems correct. Also the command line build 
works just fine.

Also I don't see any .class files generated under core/bin. They are 
present under core/build/classes/main/ though. Is this due to some kind 
of mismatch between the command line build and Eclipse build?

Could you please suggest what am I missing here.

Environment:
- Eclipse Neon
- Java 1.7
- Scala 2.10.6
- CentOS 6.8

thanks
-dhwani


DISCLAIMER
==========
This e-mail may contain privileged and confidential information which is the property of Persistent Systems Ltd. It is intended only for the use of the individual or entity to which it is addressed. If you are not the intended recipient, you are not authorized to read, retain, copy, print, distribute or use this message. If you have received this communication in error, please notify the sender and delete all copies of this message. Persistent Systems Ltd. does not accept any liability for virus infected mails.


Re: Build problems in Eclipse dev environment setup

Posted by Dhwani Katagade <dh...@persistent.co.in>.
Hi,

I was able to resolve the compile errors in Eclipse by manually setting 
the Default output folder for core project to core/build/classes/main.

Looking further into this issue I see that the output folders for gradle 
and those for eclipse get configured differently. The output folders in 
eclipse go under <project>/bin where as in gradle they are under 
<project>/build. Will it be fine if we could align these so that inter 
project dependencies fall well in place in either build? I was looking 
into the possibilities of fixing that.

There is another discussion on the pros and cons of this here 
https://discuss.gradle.org/t/eclipse-generated-files-should-be-put-in-the-same-place-as-the-gradle-generated-files/6986

thanks
-dhwani

On 01/04/2017 12:15 AM, Dhwani Katagade wrote:
> Hi,
>
> I am trying to setup the eclipse dev environment on trunk. I have 
> followed the instructions given here
> https://github.com/apache/kafka/blob/trunk/README.md
> https://cwiki.apache.org/confluence/display/KAFKA/Developer+Setup#DeveloperSetup-Eclipsesetup 
>
>
> After I run ./gradlew eclipse in the command line followed by "Import 
> existing projects into workspace" in Eclipse, I am able to see the 
> projects. But I see the following build errors in Eclipse.
>
> Description: The import kafka.utils.ShutdownableThread cannot be resolved
> Resource: Consumer.java
> Path: /kafka-examples/src/main/java/kafka/examples
> Location: line 19
> Type: Java Problem
>
> There are other errors as well but they are of a similar nature and 
> others dependent on them. I can see the class ShutdownableThread in 
> core and core is compiled properly. The examples project has core 
> setup as  dependency project which seems correct. Also the command 
> line build works just fine.
>
> Also I don't see any .class files generated under core/bin. They are 
> present under core/build/classes/main/ though. Is this due to some 
> kind of mismatch between the command line build and Eclipse build?
>
> Could you please suggest what am I missing here.
>
> Environment:
> - Eclipse Neon
> - Java 1.7
> - Scala 2.10.6
> - CentOS 6.8
>
> thanks
> -dhwani
>
>
> DISCLAIMER
> ==========
> This e-mail may contain privileged and confidential information which 
> is the property of Persistent Systems Ltd. It is intended only for the 
> use of the individual or entity to which it is addressed. If you are 
> not the intended recipient, you are not authorized to read, retain, 
> copy, print, distribute or use this message. If you have received this 
> communication in error, please notify the sender and delete all copies 
> of this message. Persistent Systems Ltd. does not accept any liability 
> for virus infected mails.
>


DISCLAIMER
==========
This e-mail may contain privileged and confidential information which is the property of Persistent Systems Ltd. It is intended only for the use of the individual or entity to which it is addressed. If you are not the intended recipient, you are not authorized to read, retain, copy, print, distribute or use this message. If you have received this communication in error, please notify the sender and delete all copies of this message. Persistent Systems Ltd. does not accept any liability for virus infected mails.


Re: Build problems in Eclipse dev environment setup

Posted by Dhwani Katagade <dh...@persistent.co.in>.
Hi Edoardo,

These kind of inconsistencies do not pose problems in most cases. For 
instance I was able to get things working in Eclipse by doing a full 
build on CLI and then importing the gradle eclipse plugin generated 
.project and .classpath files in eclipse.

But as a counter example, the generated project files for core look for 
test classes and resources from clients project under the gradle output 
location. If something is modified in clients test or resources under 
eclipse, the core project will not see the change unless the clients 
project is re-built from CLI.

I agree this is not a big pain, but just an inconvenient setup 
inconsistency.

-dhwani

On Wednesday 11 January 2017 05:02 PM, Edoardo Comar wrote:
> Just my personal preference
> the different output folders have not been annoying to me.
> I know that the eclipse compile output is different from the output
> generated running gradle on the CLI and am happy with that.
> --------------------------------------------------
> Edoardo Comar
> IBM MessageHub
> ecomar@uk.ibm.com
> IBM UK Ltd, Hursley Park, SO21 2JN
>
> IBM United Kingdom Limited Registered in England and Wales with number
> 741598 Registered office: PO Box 41, North Harbour, Portsmouth, Hants. PO6
> 3AU
>
>
>
> From:   Dhwani Katagade <dh...@persistent.co.in>
> To:     <de...@kafka.apache.org>
> Date:   08/01/2017 13:52
> Subject:        Re: Build problems in Eclipse dev environment setup
>
>
>
> Hi Ismael,
>
> Thanks for your response. I agree this is not a Kafka issue, its about
> gradle and its eclipse plugin. I was able to resolve the compile errors
> in Eclipse by manually setting the Default output folder for core
> project to core/build/classes/main.
>
> I understand Eclipse is not the popular choice for an IDE but, for me
> and my other Eclipse brethren, I looked into the problems I faced and
> noticed that the output folders for gradle and those for eclipse get
> configured differently. The output folders in eclipse go under
> <project>/bin where as in gradle they are under <project>/build. Due to
> this the projects in Eclipse don't work fine unless the command line
> build is completed at least once. Will it be fine if we could align
> these so that inter project dependencies fall well in place in either
> build? *I was looking into the possibilities of fixing that and I have a
> change available that I am testing out.*
>
> There is another discussion on the pros and cons of this here
> https://discuss.gradle.org/t/eclipse-generated-files-should-be-put-in-the-same-place-as-the-gradle-generated-files/6986
>
>
> People, please let me know your opinion and I will provide a PR for this
> if I get this working for myself.
>
> thanks
> -dhwani
>
> On 01/07/2017 07:02 PM, Ismael Juma wrote:
>> Hi Dhwani,
>>
>> This is more about Gradle and Eclipse than Kafka and many of us use
>> IntelliJ IDEA so won't be able to help you. I can confirm that IntelliJ
> is
>> able to import the project fine out of the box.
>>
>> Ismael
>>
>> On 3 Jan 2017 6:45 pm, "Dhwani Katagade"
> <dh...@persistent.co.in>
>> wrote:
>>
>>> Hi,
>>>
>>> I am trying to setup the eclipse dev environment on trunk. I have
> followed
>>> the instructions given here
>>> https://github.com/apache/kafka/blob/trunk/README.md
>>> https://cwiki.apache.org/confluence/display/KAFKA/Developer+
>>> Setup#DeveloperSetup-Eclipsesetup
>>>
>>> After I run ./gradlew eclipse in the command line followed by "Import
>>> existing projects into workspace" in Eclipse, I am able to see the
>>> projects. But I see the following build errors in Eclipse.
>>>
>>> Description: The import kafka.utils.ShutdownableThread cannot be
> resolved
>>> Resource: Consumer.java
>>> Path: /kafka-examples/src/main/java/kafka/examples
>>> Location: line 19
>>> Type: Java Problem
>>>
>>> There are other errors as well but they are of a similar nature and
> others
>>> dependent on them. I can see the class ShutdownableThread in core and
> core
>>> is compiled properly. The examples project has core setup as dependency
>>> project which seems correct. Also the command line build works just
> fine.
>>> Also I don't see any .class files generated under core/bin. They are
>>> present under core/build/classes/main/ though. Is this due to some kind
> of
>>> mismatch between the command line build and Eclipse build?
>>>
>>> Could you please suggest what am I missing here.
>>>
>>> Environment:
>>> - Eclipse Neon
>>> - Java 1.7
>>> - Scala 2.10.6
>>> - CentOS 6.8
>>>
>>> thanks
>>> -dhwani
>>>
>>>
>>> DISCLAIMER
>>> ==========
>>> This e-mail may contain privileged and confidential information which
> is
>>> the property of Persistent Systems Ltd. It is intended only for the use
> of
>>> the individual or entity to which it is addressed. If you are not the
>>> intended recipient, you are not authorized to read, retain, copy,
> print,
>>> distribute or use this message. If you have received this communication
> in
>>> error, please notify the sender and delete all copies of this message.
>>> Persistent Systems Ltd. does not accept any liability for virus
> infected
>>> mails.
>>>
>>>
>
> DISCLAIMER
> ==========
> This e-mail may contain privileged and confidential information which is
> the property of Persistent Systems Ltd. It is intended only for the use of
> the individual or entity to which it is addressed. If you are not the
> intended recipient, you are not authorized to read, retain, copy, print,
> distribute or use this message. If you have received this communication in
> error, please notify the sender and delete all copies of this message.
> Persistent Systems Ltd. does not accept any liability for virus infected
> mails.
>
>
>
>
> Unless stated otherwise above:
> IBM United Kingdom Limited - Registered in England and Wales with number
> 741598.
> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
>


DISCLAIMER
==========
This e-mail may contain privileged and confidential information which is the property of Persistent Systems Ltd. It is intended only for the use of the individual or entity to which it is addressed. If you are not the intended recipient, you are not authorized to read, retain, copy, print, distribute or use this message. If you have received this communication in error, please notify the sender and delete all copies of this message. Persistent Systems Ltd. does not accept any liability for virus infected mails.


Re: Build problems in Eclipse dev environment setup

Posted by Edoardo Comar <EC...@uk.ibm.com>.
Just my personal preference 
the different output folders have not been annoying to me. 
I know that the eclipse compile output is different from the output 
generated running gradle on the CLI and am happy with that.
--------------------------------------------------
Edoardo Comar
IBM MessageHub
ecomar@uk.ibm.com
IBM UK Ltd, Hursley Park, SO21 2JN

IBM United Kingdom Limited Registered in England and Wales with number 
741598 Registered office: PO Box 41, North Harbour, Portsmouth, Hants. PO6 
3AU



From:   Dhwani Katagade <dh...@persistent.co.in>
To:     <de...@kafka.apache.org>
Date:   08/01/2017 13:52
Subject:        Re: Build problems in Eclipse dev environment setup



Hi Ismael,

Thanks for your response. I agree this is not a Kafka issue, its about 
gradle and its eclipse plugin. I was able to resolve the compile errors 
in Eclipse by manually setting the Default output folder for core 
project to core/build/classes/main.

I understand Eclipse is not the popular choice for an IDE but, for me 
and my other Eclipse brethren, I looked into the problems I faced and 
noticed that the output folders for gradle and those for eclipse get 
configured differently. The output folders in eclipse go under 
<project>/bin where as in gradle they are under <project>/build. Due to 
this the projects in Eclipse don't work fine unless the command line 
build is completed at least once. Will it be fine if we could align 
these so that inter project dependencies fall well in place in either 
build? *I was looking into the possibilities of fixing that and I have a 
change available that I am testing out.*

There is another discussion on the pros and cons of this here 
https://discuss.gradle.org/t/eclipse-generated-files-should-be-put-in-the-same-place-as-the-gradle-generated-files/6986


People, please let me know your opinion and I will provide a PR for this 
if I get this working for myself.

thanks
-dhwani

On 01/07/2017 07:02 PM, Ismael Juma wrote:
> Hi Dhwani,
>
> This is more about Gradle and Eclipse than Kafka and many of us use
> IntelliJ IDEA so won't be able to help you. I can confirm that IntelliJ 
is
> able to import the project fine out of the box.
>
> Ismael
>
> On 3 Jan 2017 6:45 pm, "Dhwani Katagade" 
<dh...@persistent.co.in>
> wrote:
>
>> Hi,
>>
>> I am trying to setup the eclipse dev environment on trunk. I have 
followed
>> the instructions given here
>> https://github.com/apache/kafka/blob/trunk/README.md
>> https://cwiki.apache.org/confluence/display/KAFKA/Developer+
>> Setup#DeveloperSetup-Eclipsesetup
>>
>> After I run ./gradlew eclipse in the command line followed by "Import
>> existing projects into workspace" in Eclipse, I am able to see the
>> projects. But I see the following build errors in Eclipse.
>>
>> Description: The import kafka.utils.ShutdownableThread cannot be 
resolved
>> Resource: Consumer.java
>> Path: /kafka-examples/src/main/java/kafka/examples
>> Location: line 19
>> Type: Java Problem
>>
>> There are other errors as well but they are of a similar nature and 
others
>> dependent on them. I can see the class ShutdownableThread in core and 
core
>> is compiled properly. The examples project has core setup as dependency
>> project which seems correct. Also the command line build works just 
fine.
>>
>> Also I don't see any .class files generated under core/bin. They are
>> present under core/build/classes/main/ though. Is this due to some kind 
of
>> mismatch between the command line build and Eclipse build?
>>
>> Could you please suggest what am I missing here.
>>
>> Environment:
>> - Eclipse Neon
>> - Java 1.7
>> - Scala 2.10.6
>> - CentOS 6.8
>>
>> thanks
>> -dhwani
>>
>>
>> DISCLAIMER
>> ==========
>> This e-mail may contain privileged and confidential information which 
is
>> the property of Persistent Systems Ltd. It is intended only for the use 
of
>> the individual or entity to which it is addressed. If you are not the
>> intended recipient, you are not authorized to read, retain, copy, 
print,
>> distribute or use this message. If you have received this communication 
in
>> error, please notify the sender and delete all copies of this message.
>> Persistent Systems Ltd. does not accept any liability for virus 
infected
>> mails.
>>
>>


DISCLAIMER
==========
This e-mail may contain privileged and confidential information which is 
the property of Persistent Systems Ltd. It is intended only for the use of 
the individual or entity to which it is addressed. If you are not the 
intended recipient, you are not authorized to read, retain, copy, print, 
distribute or use this message. If you have received this communication in 
error, please notify the sender and delete all copies of this message. 
Persistent Systems Ltd. does not accept any liability for virus infected 
mails.




Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 
741598. 
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU

Re: Build problems in Eclipse dev environment setup

Posted by Dhwani Katagade <dh...@persistent.co.in>.
Hi Ismael,

Thanks for your response. I agree this is not a Kafka issue, its about 
gradle and its eclipse plugin. I was able to resolve the compile errors 
in Eclipse by manually setting the Default output folder for core 
project to core/build/classes/main.

I understand Eclipse is not the popular choice for an IDE but, for me 
and my other Eclipse brethren, I looked into the problems I faced and 
noticed that the output folders for gradle and those for eclipse get 
configured differently. The output folders in eclipse go under 
<project>/bin where as in gradle they are under <project>/build. Due to 
this the projects in Eclipse don't work fine unless the command line 
build is completed at least once. Will it be fine if we could align 
these so that inter project dependencies fall well in place in either 
build? *I was looking into the possibilities of fixing that and I have a 
change available that I am testing out.*

There is another discussion on the pros and cons of this here 
https://discuss.gradle.org/t/eclipse-generated-files-should-be-put-in-the-same-place-as-the-gradle-generated-files/6986

People, please let me know your opinion and I will provide a PR for this 
if I get this working for myself.

thanks
-dhwani

On 01/07/2017 07:02 PM, Ismael Juma wrote:
> Hi Dhwani,
>
> This is more about Gradle and Eclipse than Kafka and many of us use
> IntelliJ IDEA so won't be able to help you. I can confirm that IntelliJ is
> able to import the project fine out of the box.
>
> Ismael
>
> On 3 Jan 2017 6:45 pm, "Dhwani Katagade" <dh...@persistent.co.in>
> wrote:
>
>> Hi,
>>
>> I am trying to setup the eclipse dev environment on trunk. I have followed
>> the instructions given here
>> https://github.com/apache/kafka/blob/trunk/README.md
>> https://cwiki.apache.org/confluence/display/KAFKA/Developer+
>> Setup#DeveloperSetup-Eclipsesetup
>>
>> After I run ./gradlew eclipse in the command line followed by "Import
>> existing projects into workspace" in Eclipse, I am able to see the
>> projects. But I see the following build errors in Eclipse.
>>
>> Description: The import kafka.utils.ShutdownableThread cannot be resolved
>> Resource: Consumer.java
>> Path: /kafka-examples/src/main/java/kafka/examples
>> Location: line 19
>> Type: Java Problem
>>
>> There are other errors as well but they are of a similar nature and others
>> dependent on them. I can see the class ShutdownableThread in core and core
>> is compiled properly. The examples project has core setup as  dependency
>> project which seems correct. Also the command line build works just fine.
>>
>> Also I don't see any .class files generated under core/bin. They are
>> present under core/build/classes/main/ though. Is this due to some kind of
>> mismatch between the command line build and Eclipse build?
>>
>> Could you please suggest what am I missing here.
>>
>> Environment:
>> - Eclipse Neon
>> - Java 1.7
>> - Scala 2.10.6
>> - CentOS 6.8
>>
>> thanks
>> -dhwani
>>
>>
>> DISCLAIMER
>> ==========
>> This e-mail may contain privileged and confidential information which is
>> the property of Persistent Systems Ltd. It is intended only for the use of
>> the individual or entity to which it is addressed. If you are not the
>> intended recipient, you are not authorized to read, retain, copy, print,
>> distribute or use this message. If you have received this communication in
>> error, please notify the sender and delete all copies of this message.
>> Persistent Systems Ltd. does not accept any liability for virus infected
>> mails.
>>
>>


DISCLAIMER
==========
This e-mail may contain privileged and confidential information which is the property of Persistent Systems Ltd. It is intended only for the use of the individual or entity to which it is addressed. If you are not the intended recipient, you are not authorized to read, retain, copy, print, distribute or use this message. If you have received this communication in error, please notify the sender and delete all copies of this message. Persistent Systems Ltd. does not accept any liability for virus infected mails.


Re: Build problems in Eclipse dev environment setup

Posted by Ismael Juma <is...@juma.me.uk>.
Hi Dhwani,

This is more about Gradle and Eclipse than Kafka and many of us use
IntelliJ IDEA so won't be able to help you. I can confirm that IntelliJ is
able to import the project fine out of the box.

Ismael

On 3 Jan 2017 6:45 pm, "Dhwani Katagade" <dh...@persistent.co.in>
wrote:

> Hi,
>
> I am trying to setup the eclipse dev environment on trunk. I have followed
> the instructions given here
> https://github.com/apache/kafka/blob/trunk/README.md
> https://cwiki.apache.org/confluence/display/KAFKA/Developer+
> Setup#DeveloperSetup-Eclipsesetup
>
> After I run ./gradlew eclipse in the command line followed by "Import
> existing projects into workspace" in Eclipse, I am able to see the
> projects. But I see the following build errors in Eclipse.
>
> Description: The import kafka.utils.ShutdownableThread cannot be resolved
> Resource: Consumer.java
> Path: /kafka-examples/src/main/java/kafka/examples
> Location: line 19
> Type: Java Problem
>
> There are other errors as well but they are of a similar nature and others
> dependent on them. I can see the class ShutdownableThread in core and core
> is compiled properly. The examples project has core setup as  dependency
> project which seems correct. Also the command line build works just fine.
>
> Also I don't see any .class files generated under core/bin. They are
> present under core/build/classes/main/ though. Is this due to some kind of
> mismatch between the command line build and Eclipse build?
>
> Could you please suggest what am I missing here.
>
> Environment:
> - Eclipse Neon
> - Java 1.7
> - Scala 2.10.6
> - CentOS 6.8
>
> thanks
> -dhwani
>
>
> DISCLAIMER
> ==========
> This e-mail may contain privileged and confidential information which is
> the property of Persistent Systems Ltd. It is intended only for the use of
> the individual or entity to which it is addressed. If you are not the
> intended recipient, you are not authorized to read, retain, copy, print,
> distribute or use this message. If you have received this communication in
> error, please notify the sender and delete all copies of this message.
> Persistent Systems Ltd. does not accept any liability for virus infected
> mails.
>
>