我試圖從Spring's guide設置Spring Roo,但是我得到下面的錯誤。我懷疑它與this bug概述的Java 8兼容性有關,但我在如何着手解決此問題方面受阻。無法運行Spring Roo shell - 「Unable to resolve .. missing missing .. package = javax.xml ...」
這裏是我的錯誤示例:
ERROR: Bundle com.github.antlrjavaparser.antlr-java-parser [3] Error starting file:/home/luca at java.lang.Thread.run(Thread.java:745)
org.osgi.framework.BundleException: Unresolved constraint in bundle org.springframework.roo.support.osgi [70]: Unable to resolve 70.0: missing requirement [70.0] package; (&(package=org.springframework.roo.support.ant)(version>=1.2.0)(!(version>=2.0.0))) [caused by: Unable to resolve 69.0: missing requirement [69.0] package; (package=javax.xml.namespace)]
at org.apache.felix.framework.Felix.resolveBundle(Felix.java:3564)
at org.apache.felix.framework.Felix.startBundle(Felix.java:1797)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1192)
at org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:266)
at java.lang.Thread.run(Thread.java:745)
org.osgi.framework.BundleException: Unresolved constraint in bundle org.springframework.roo.uaa [71]: Unable to resolve 71.0: missing requirement [71.0] package; (&(package=org.springframework.roo.shell)(version>=1.2.0)(!(version>=2.0.0))) [caused by: Unable to resolve 64.0: missing requirement [64.0] package; (package=javax.xml.parsers)]
at org.apache.felix.framework.Felix.resolveBundle(Felix.java:3564)
at org.apache.felix.framework.Felix.startBundle(Felix.java:1797)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1192)
at org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:266)
at java.lang.Thread.run(Thread.java:745)
org.osgi.framework.BundleException: Unresolved constraint in bundle org.springframework.roo.url.stream.jdk [73]: Unable to resolve 73.0: missing requirement [73.0] package; (&(package=org.springframework.roo.shell)(version>=1.2.0)(!(version>=2.0.0))) [caused by: Unable to resolve 64.0: missing requirement [64.0] package; (package=javax.xml.parsers)]
at org.apache.felix.framework.Felix.resolveBundle(Felix.java:3564)
at org.apache.felix.framework.Felix.startBundle(Felix.java:1797)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1192)
at org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:266)
at java.lang.Thread.run(Thread.java:745)
org.osgi.framework.BundleException: Unresolved constraint in bundle org.springframework.roo.wrapping.antlr4-runtime [74]: Unable to resolve 74.0: missing requirement [74.0] package; (package=javax.imageio)
at org.apache.felix.framework.Felix.resolveBundle(Felix.java:3564)
at org.apache.felix.framework.Felix.startBundle(Felix.java:1797)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1192)
at org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:266)
at java.lang.Thread.run(Thread.java:745)
org.osgi.framework.BundleException: Unresolved constraint in bundle org.springframework.roo.wrapping.bcprov-jdk15 [76]: Unable to resolve 76.0: missing requirement [76.0] package; (package=javax.crypto)
at org.apache.felix.framework.Felix.resolveBundle(Felix.java:3564)
at org.apache.felix.framework.Felix.startBundle(Felix.java:1797)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1192)
at org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:266)
at java.lang.Thread.run(Thread.java:745)
org.osgi.framework.BundleException: Unresolved constraint in bundle org.springframework.uaa.client [81]: Unable to resolve 81.0: missing requirement [81.0] package; (package=javax.xml.parsers)
at org.apache.felix.framework.Felix.resolveBundle(Felix.java:3564)
at org.apache.felix.framework.Felix.startBundle(Felix.java:1797)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1192)
at org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:266)
at java.lang.Thread.run(Thread.java:745)
:
此外,我使用Java 8:
[lucas-ThinkPad-W520]/home/lucas$ java -version
java version "1.8.0_20"
Java(TM) SE Runtime Environment (build 1.8.0_20-b26)
Java HotSpot(TM) 64-Bit Server VM (build 25.20-b23, mixed mode)
這裏是我的Maven的版本:
[lucas-ThinkPad-W520]/home/.../springsource/spring-roo-1.2.5.RELEASE$ mvn -version
Apache Maven 3.0.5
Maven home: /usr/share/maven
Java version: 1.8.0_20, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-8-oracle/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.13.0-35-generic", arch: "amd64", family: "unix"
我運行Ubuntu 14.04重要。任何關於如何進行的建議都會有所幫助。另外,如果可能的話,我寧願留在Java 8中。