Search code examples
springspring-roo

Spring Roo Setup on Mac


I have been reading about Spring Roo and am very fascinated to try it out as it will reduce a lot of manual data entry type of job for my team. But the installation is really killing me.

I used STS and installe Roo as a plugin and I was able to launch Roo Shell but it stops at :

"Please stand by until the Roo Shell is completely loaded."

And I dont see any workspace error logs too.

Next I tried to launch on my Terminal without an IDE and it fails with the below error :

svc-notes-MacBook-Pro:roo-test tkhader$ roo

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.apache.felix.framework.util.SecureAction (file:/Users/tkhader/Documents/Junk/RooAutogen/spring-roo-2.0.0.RELEASE/bin/org.apache.felix.framework-5.4.0.jar) to method java.net.URLClassLoader.addURL(java.net.URL)
WARNING: Please consider reporting this to the maintainers of org.apache.felix.framework.util.SecureAction
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
ERROR: Bundle com.github.antlrjavaparser.antlr-java-parser [1] Error starting file:/Users/tkhader/Documents/Junk/RooAutogen/spring-roo-2.0.0.RELEASE/bundle/antlr-java-parser-1.0.15.jar (org.osgi.framework.BundleException: Unable to resolve com.github.antlrjavaparser.antlr-java-parser [1](R 1.0): missing requirement [com.github.antlrjavaparser.antlr-java-parser [1](R 1.0)] osgi.wiring.package; (osgi.wiring.package=org.antlr.v4.runtime.atn) [caused by: Unable to resolve org.springframework.roo.wrapping.antlr4-runtime [81](R 81.0): missing requirement [org.springframework.roo.wrapping.antlr4-runtime [81](R 81.0)] osgi.wiring.package; (osgi.wiring.package=javax.annotation.processing)] Unresolved requirements: [[com.github.antlrjavaparser.antlr-java-parser [1](R 1.0)] osgi.wiring.package; (osgi.wiring.package=org.antlr.v4.runtime.atn)])
org.osgi.framework.BundleException: Unable to resolve com.github.antlrjavaparser.antlr-java-parser [1](R 1.0): missing requirement [com.github.antlrjavaparser.antlr-java-parser [1](R 1.0)] osgi.wiring.package; (osgi.wiring.package=org.antlr.v4.runtime.atn) [caused by: Unable to resolve org.springframework.roo.wrapping.antlr4-runtime [81](R 81.0): missing requirement [org.springframework.roo.wrapping.antlr4-runtime [81](R 81.0)] osgi.wiring.package; (osgi.wiring.package=javax.annotation.processing)] Unresolved requirements: [[com.github.antlrjavaparser.antlr-java-parser [1](R 1.0)] osgi.wiring.package; (osgi.wiring.package=org.antlr.v4.runtime.atn)]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4111)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2117)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1371)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:844)

Solution

  • Roo is not working in java 9, I had to downgrade to java 8 and it worked the very first time.

    svc-notes-MacBook-Pro:java6 tkhader$ jenv versions
      system
      1.6
      1.6.0.65
    * 1.8 (set by /usr/local/Caskroom/java6/.java-version)
      1.8.0.162
      9.0
      9.0.4
      oracle64-1.6.0.65
      oracle64-1.8.0.162
      oracle64-9.0.4
    svc-notes-MacBook-Pro:java6 tkhader$ jenv exec roo
                    _                               
     ___ _ __  _ __(_)_ __   __ _   _ __ ___   ___  
    / __| '_ \| '__| | '_ \ / _` | | '__/ _ \ / _ \ 
    \__ \ |_) | |  | | | | | (_| | | | | (_) | (_) |
    |___/ .__/|_|  |_|_| |_|\__, | |_|  \___/ \___/ 
        |_|                 |___/      2.0.0.RELEASE
    
    Welcome to Spring Roo. For assistance press TAB or type "hint" then hit ENTER.
    roo>