airbnb / aerosolve

A machine learning package built for humans.
http://airbnb.github.io/aerosolve/
Apache License 2.0
4.8k stars 562 forks source link

Blocking issue with running Aerosolve demos #285

Open jaypatelh opened 7 years ago

jaypatelh commented 7 years ago

Hi, I'm a Stanford MS student trying to run the image impressionism and income classification demos. When running gradle shadowjar --info, I get multiple errors of the following type during the execution of the task :core:compileJava:

/Users/ei5h4/Documents/aerosolve/core/build/gen-java/com/airbnb/aerosolve/core/ModelRecord.java:1075: error: method hashCode in class Object cannot be applied to given types;
      hashCode = hashCode * 8191 + org.apache.thrift.TBaseHelper.hashCode(featureWeight);
                                                                ^
  required: no arguments
  found: double
  reason: actual and formal argument lists differ in length

My thrift version is 0.10.0. I tried downloading and installing an older version of thrift (0.9.0) from source since this demo is old and might rely on an older thrift (just a hypothesis). But that turned out to have some roadblocks as well since the older thrift uses some C code namespace tr1 that is no longer supported by C++11 on my OSX El Capitan. So I couldn't verify if thrift is the issue or something else. Basically I thought the hashCode function in the error above might have a changed signature from 0.9.0 to 0.10.0.

I think anyone else attempting to build the demo will run into this issue as well. Really hope to get this running on my machine soon. Aerosolve is super exciting!

mLewisLogic commented 7 years ago

I'm pretty sure that it does require Thrift 0.9.x.

Instead of trying to compile Thrift from source, check out getting the 0.9 branch via Homebrew. I believe the command looks something like: brew install thrift@0.90

nataliedurgin commented 7 years ago

Hi @jaypatelh, There are some version details in the twenty-news demo README that might address your issue with the other two demos. If they do address your issue, I'll add them to the other READMEs. https://github.com/airbnb/aerosolve/blob/master/demo/twenty_news/README.md