无法启动 Spring Roo 并使其运行

无法启动 Spring Roo 并使其运行

我无法启动 Spring Roo。它无法从命令行启动,也无法从 STS 启动。当我创建“Spring Roo 项目”时,Roo Shell 不会弹出,并且项目上有错误标记。

  • 操作系统:Windows 7 64位
  • JDK: 1.6.0_25 也是 64 位

我有最新版本的 STS,但是与 2.7.1 版相同的问题也出现在 Roo 版本 1.1.5 中。

这里有命令行启动时的错误

该错误块的​​前 20 行:

__ERROR: Error starting file:/D:/springsource/spring-roo-1.1.5.RELEASE/bundle/org.springframework.roo.addon.backup-1.1.5.RELEASE.jar
(org.osgi.framework.BundleException: Unresolved constraint in bundle org.springframework.roo.addon.backup [7]: Unable to resolve 7.0: missing requirement [7.0] package; (&(package=org.springframework.roo.file.monitor.event)(version>=1.1.0)(!(version>=2.0.0))) [caused by: Unable to resolve 39.0: missing requirement [39.0] package; (&(package=org.springframework.roo.support.ant)(version>=1.1.0)(!(version>=2.0.0))) [caused by: Unable to resolve 52.0: missing requirement [52.0] package; (package=javax.xml.namespace)]])

org.osgi.framework.BundleException: 
Unresolved constraint in bundle org.springframework.roo.addon.backup [7]: 
Unable to resolve 7.0: missing requirement [7.0] package; 
(&(package=org.springframework.roo.file.monitor.event)(version>=1.1.0)(!(version>=2.0.0))) [caused by: Unable to resolve 39.0: missing requirement [39.0] package; (&(package=org.springframework.roo.support.ant)(version>=1.1.0)(!(version>=2.0.0))) [caused by: Unable to resolve 52.0: missing requirement [52.0] package; (package=javax.xml.namespace)]]
        at org.apache.felix.framework.Felix.resolveBundle(Felix.java:3409)
        at org.apache.felix.framework.Felix.startBundle(Felix.java:1719)
        at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1148)
        at org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:264)
        at java.lang.Thread.run(Unknown Source)

ERROR: Error starting file:/D:/springsource/spring-roo-1.1.5.RELEASE/bundle/org.springframework.roo.addon.configurable-1.1.5.RELEASE.jar
(org.osgi.framework.BundleException: Unresolved constraint in bundle org.springframework.roo.addon.configurable [8]: Unable to resolve 8.0: missing requirement [8.0] package; (&(package=org.springframework.roo.classpath)(version>=1.1.0)(!(version>=2.0.0))) [caused by: Unable to resolve 36.0: missing requirement [36.0] package; (&(package=org.springframework.roo.file.monitor)(version>=1.1.0)(!(version>=2.0.0))) [caused by: Unable to resolve 39.0: missing requirement [39.0] package; (&(package=org.springframework.roo.support.ant)(version>=1.1.0)(!(version>=2.0.0))) [caused by: Unable to resolve 52.0: missing requirement [52.0] package; (package=javax.xml.namespace)]]])

org.osgi.framework.BundleException: 
Unresolved constraint in bundle org.springframework.roo.addon.configurable [8]: Unable to resolve 8.0: missing requirement [8.0] package;
(&(package=org.springframework.roo.classpath)(version>=1.1.0)(!(version>=2.0.0))) [caused by: Unable to resolve 36.0: missing requirement [36.0] package;
(&(package=org.springframework.roo.file.monitor)(version>=1.1.0)(!(version>=2.0.0))) [caused by: Unable to resolve 39.0: missing requirement [39.0] package;
(&(package=org.springframework.roo.support.ant)(version>=1.1.0)(!(version>=2.0.0))) [caused by: Unable to resolve 52.0: missing requirement [52.0] package;
(package=javax.xml.namespace)]]]
        at org.apache.felix.framework.Felix.resolveBundle(Felix.java:3409)
        at org.apache.felix.framework.Felix.startBundle(Felix.java:1719)
        at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1148)
        at org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:264)
        at java.lang.Thread.run(Unknown Source)__

我尝试以管理员身份从 roo 的 bin 文件夹运行 .bat 文件,但问题仍然存在。

我已经遵循安装指南,基本上只需要 roo\bin 的路径变量 - 没有太大帮助。

你知道该如何修复它吗?

答案1

问题虽然得到了解决,但并未真正解决。

首先,没有帮助的是:

  • 关闭防火墙
  • 关闭防病毒软件
  • 将上面两个都关闭

我知道问题的原因是安装本地化与主分区不同。我再次安装了完整的 STS(sts + maven + roo + server),但这次是在 C 盘,也就是我的主分区上。令人惊讶的是,它成功了。当我将它安装在主分区上时,文件夹似乎获得了更多权限。但我仍然不知道如何添加这些权限,因为该权限窗口中有更多组,而目前我不知道如何在其他驱动器上添加这些权限。此外,覆盖的这些组内的权限也不同。缺少的两个组是:TrustedInstaller、CREATOR-OWNER(我可能翻译错了第二个,因为我不使用英文版的 Windows。它仍然是大写锁定的)

长话短说:将其安装在主驱动器上。否则,您必须以某种方式修复权限。

相关内容