trouble setting up MarketRunner on Ubuntu Linux
Hello everyone,
I am having some trouble setting up MarketRunner on Ubuntu 9.10. Whenever I try to run one of the sample strategies I get the following exception trace:
Exception in thread "main" java.util.NoSuchElementException
at java.util.AbstractList$2.next(libgcj.so.10) at
com.google.inject.spi.InjectionPoint.forMember(InjectionPoint.java:110)
at com.google.inject.spi.InjectionPoint.(InjectionPoint.java:74) at
com.google.inject.spi.InjectionPoint.forConstructorOf(InjectionPoint.java:253)
at
com.google.inject.internal.ConstructorBindingImpl.create(ConstructorBindingImpl.java:89)
at
com.google.inject.internal.InjectorImpl.createUninitializedBinding(InjectorImpl.java:426)
at
com.google.inject.internal.InjectorImpl.createJustInTimeBinding(InjectorImpl.java:633)
at
com.google.inject.internal.InjectorImpl.createJustInTimeBindingRecursive(InjectorImpl.java:567)
at
com.google.inject.internal.InjectorImpl.getJustInTimeBinding(InjectorImpl.java:166)
at
com.google.inject.internal.InjectorImpl.getBindingOrThrow(InjectorImpl.java:126)
at
com.google.inject.internal.InjectorImpl.getInternalFactory(InjectorImpl.java:641)
at
com.google.inject.internal.FactoryProxy.notify(FactoryProxy.java:43)
at
com.google.inject.internal.BindingProcessor.runCreationListeners(BindingProcessor.java:238)
at
com.google.inject.internal.InjectorBuilder.initializeStatically(InjectorBuilder.java:134)
at
com.google.inject.internal.InjectorBuilder.build(InjectorBuilder.java:108)
at com.google.inject.Guice.createInjector(Guice.java:93) at
com.google.inject.Guice.createInjector(Guice.java:70) at
com.google.inject.Guice.createInjector(Guice.java:60) at
com.algodeal.MainStrategyRunner.main(MainStrategyRunner.java:154)
Any suggestions?
Comments are currently closed for this discussion. You can start a new one.
Support Staff 2 Posted by Eric on 02 Mar, 2010 10:16 AM
Hi Alex,
Thanks for this report. Sorry you are having this issue. The good news is that we are routinely using Ubuntu 9.10 for development, so we are in a good position to work on it.
Our guess is that you are using gcj, which is an open source version of Java. It used to be widely available with Ubuntu, though our understanding is that Ubuntu 9.10 does not come with it by default anymore.
Unfortunately, gcj is known to have a number of problems. We recommend that you install & use Sun's JDK instead (which we use for development) or Open JDK if you'd rather use an open source flavor of Java (we don't use Open JDK all the time, but we do occasionally test with it).
If you are not familiar with installing Sun JDK on Ubuntu Karmic, here is a good starting point: https://help.ubuntu.com/community/Java.
For the future, we'll see how we can made that issue clearer in our code.
I hope this helps,
Eric
3 Posted by Alex on 02 Mar, 2010 05:19 PM
I did install the Sun IDK (1.6) as instructed by your "Install MarketRunner" page, and it seems that is the one that is in use by default:
$ update-java-alternatives -l java-6-sun 63 /usr/lib/jvm/java-6-sun
4 Posted by Alex on 02 Mar, 2010 05:31 PM
Disregard that last post. It was the JRE not the JVM that was pointing to the gcj version. Fixed by running
sudo update-alternatives --config java
Thanks for the help.
Support Staff 5 Posted by Eric on 02 Mar, 2010 05:32 PM
Excellent. I'm glad it works now.
Eric closed this discussion on 02 Mar, 2010 05:32 PM.