Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Iago doesn't build under Windows #4

Open
jwaldrop opened this Issue June 27, 2012 · 12 comments

6 participants

James Waldrop Tom Howland Chris Aniszczyk stuart taylor X-Man71 apennebaker
James Waldrop
Owner

The issue is that the maven-finagle-thrift-plugin doesn't ship a Windows thrift executable, so the thrift bindings are impossible to generate (the error message is a very unhelpful NPE in plexus-utils trying to copy the binary out of the jar).

The work-around issue for Iago is to ship a separate thrift dependency that doesn't require people to generate thrift bindings on Windows.

Chris Aniszczyk
Owner

How about we just fix maven-finagle-thrift-plugin or as a work around, force people on windows to have thrift installed already as a pre-req?

stuart taylor
hsiboy commented June 27, 2012

i have thrift installed and on the path, i get this error.

James Waldrop
Owner

Yes, the error is not that thrift isn't present, but that thrift isn't in the jar. The plugin attempts to find a thrift.null executable in the jar and needless to say that fails. So, even if people have thrift, the plugin needs to be revved to realize that it's on Windows. Also, the generator needs to be the Finagle generator specifically, since the normal thrift generator doesn't generate async (Future-aware) Java code.

James Waldrop
Owner

I have a partner in crime for building the finagle-ized thrift generator so that we can include it in the plugin. We're worried this may take some time, and I think the project could stand to have the thrift interface separated out anyway, so I'm going to proceed with the workaround for now and then we'll rev the plugin when we have the binaries.

stuart taylor
hsiboy commented June 29, 2012

"The plugin attempts to find a thrift.null executable in the jar and needless to say that fails." ah, yes, that explains the error message. happy to test the workaround when its available.

James Waldrop
Owner

I thought of another solution that I like more. We have an open source project called Scrooge that generates Finagle-compatible Scala code from Thrift IDLs. This removes the dependency on native binaries completely... I have a branch that is a WIP which converts to Scrooge.

X-Man71

Where can I clone the branch, which solves the Problem? Or is there another solution for the Problem found?

Tom Howland
Collaborator
apennebaker

Maybe tweak the build to look for the thrift executable on PATH, rather than in the JAR?

Tom Howland
Collaborator

We have a fix for this in the works. We're using the scrooge generator. I hope to push this out within the next few work days.

Tom Howland WamBamBoozle closed this February 18, 2014
Tom Howland WamBamBoozle reopened this February 18, 2014
Tom Howland
Collaborator

This should be fixed as of

415c797

waiting for a windows user to verify ...

Tom Howland
Collaborator
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.