RoboVM, a tool that brings Java development to Apple's iOS, will no longer be open source. A technologist on the project cited issues with competitors taking advantage of RoboVM being out in the open as the reason for the move.
A recent blog post by Mario Zechner, who has been listed as "head geek" for RoboVM, said version 1.8 of RoboVM, unveiled in mid-September, would be the final release of the source code under the GPL. Version 1.9 was announced last week.
RoboVM was recently acquired by cross-platform tools vendor Xamarin.
"RoboVM is a complicated piece of technology that we have worked hard for years to create. Over the past few months, we have seen competitors actively exploiting our good faith by using our open source code to compete with us directly in commercial products," Zechner said in the post. "On the flip side, we have received almost no meaningful contributions to our open source code. You can imagine how disappointing this has been to us; we had hoped our initial business model of OSS with proprietary extensions (like our debugger and interface builder integration) would work."
Given low contributions and the behavior of competitors, the decision was made to stop automatically releasing changes to the core as open source, Zechner said.
One analyst was surprised at RoboVM's reasons for opting out of open source. "Well, it's certainly within their rights to do so, and I can understand their stated motivations," Forrester Research analyst Jeffrey Hammond said in an email. "They may be small enough to avoid a large-scale backlash. I'm surprised to see the reason articulated though, as I'm not sure how a competitor would use GPL code without having to return modifications to the code."
Hammond sees the bigger issue as Xamarin's acquisition of RoboVM and its desire to support RoboVM iOS apps in the Apple App Store, which has taken a dim view of GPL licenses to date.
Current RoboVM customers can keep their license and the features included at the price tier they paid for.
RoboVM compiles JVM byte code to machine code using LLVM compiler technology, whereupon code can be accommodated on iOS. Apple has not permitted the JVM on its iOS products, including the iPhone and iPad tablet. RoboVM also supports development for Android mobile systems.