[ 
https://issues.apache.org/jira/browse/AVRO-146?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12766607#action_12766607
 ] 

Doug Cutting commented on AVRO-146:
-----------------------------------

> The only things that Avro tests absolutely need paranamer to run on are the 
> classes generated from the schemas.

We actually only need to run paranamer on protocol interfaces, not schemas, to 
find message parameter names.  So we could change the ant task to accept a list 
of protocol interface names, or perhaps use .avpr files to identify classes 
(although those don't exist when reflection's used).  Shuffling generated code 
to a different directory seems like a halfway fix.  Why bother?

Also, I'm uncomfortable building much knowledge of Avro's build into this, 
since it may have to be updated whenever Avro's build changes, which 
non-Eclipse users will be unable to test.  Even Eclipse users will probably not 
test this frequently, since they're unlikely to re-generate their project.  I 
don't want to make a release and then later discover that 'ant eclipse' 
generates an unbuildable project.

The simplest approach is to configure Eclipse to call just back to Ant for all 
compilation.  That's ideal from a maintenance perspective.  Since we have to do 
that anyway for paranamer, why use Eclipse for any compilation?  (As a 
non-Eclipse user I am a natural devil's advocate here.)

> configuration to work on Avro within Eclipse
> --------------------------------------------
>
>                 Key: AVRO-146
>                 URL: https://issues.apache.org/jira/browse/AVRO-146
>             Project: Avro
>          Issue Type: New Feature
>            Reporter: Philip Zeyliger
>            Assignee: Philip Zeyliger
>         Attachments: AVRO-146.patch.txt, AVRO-146.patch.v2.txt, 
> AVRO-146.patch.v3.txt
>
>
> The soon-to-be-attached patch lets you work on Avro from within Eclipse, if 
> that's your style.
> I've added the following to the README:
> {quote}
> USING ECLIPSE
> To use Eclipse, use the "ant eclipse" target to trigger generating a 
> .classpath
> file, and also trigger compilation (to pull in the maven dependencies, etc.)
> You must also make sure that your avro checkout directory is "avro".  You
> should then be able to create an Eclipse project pointed to your checkout, and
> run the unit tests from Eclipse's runner.
> Note that the "Eclipse Builder" is configured to compile twice: once with
> Eclipse's built-in compiler, and another time with ant.  Eclipse is happier
> this way, though the classpath is configured to ignore Eclipse's compilation.
> {quote}
> Everything here is incomprehensible XML boilerplate.  There's a new ant 
> target to create the .classpath file.
> I'm able to run all but the interop test that requires a server from within 
> Eclipse.  I welcome other Eclipse users trying this out to see if it works.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to