1

我正在使用 mac 10.6.8(雪豹)。我用 JDK 7 替换了原来的 JDK 6 安装(顺便说一句,在我的操作系统中不能以完全干净的方式完成)所以现在“java”命令指向 7 中的 jre 并且 JAVA_HOME 也设置为 7 安装。然后我安装了 maven 3.0.5,最后通过自制软件安装了 spring roo。当我尝试启动 roo shell 时,我收到以下错误消息。我不知道问题的性质。

例如,有没有办法将参数传递给 roo 以使用差异 jre?

$ roo Nov 12, 2013 10:38:53 PM org.springframework.roo.felix.JdkDelegatingLogListener logNow SEVERE: [org.springframework.roo.uaa [71]] [org.springframework.roo.uaa.UaaRelatedComponentRegistrationHelper] 激活方法已引发异常 java.lang.UnsatisfiedLinkError: /Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home/jre/lib/libosx.dylib: dlopen(/Library/Java/JavaVirtualMachines/jdk1.7.0_40. jdk/Contents/Home/jre/lib/libosx.dylib,1):找不到符号:_JNFRunLoopDidStartNotification 引用自:/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home/jre/lib/./libosxapp .dylib 预期在:/System/Library/Frameworks/JavaVM.framework/Versions/A/Frameworks/JavaNativeFoundation.framework/Versions/A/JavaNativeFoundation 在/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home/ jre/lib/./libosxapp.dylib 在 java.lang.ClassLoader$NativeLibrary.load(Native Method) 在 java.lang.ClassLoader.loadLibrary1(ClassLoader.java:1957) 在 java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1882) 在 java .lang.ClassLoader.loadLibrary(ClassLoader.java:1864) 在 java.lang.Runtime.loadLibrary0(Runtime.java:849) 在 java.lang.System.loadLibrary(System.java:1087) 在 sun.security.action。 LoadLibraryAction.run(LoadLibraryAction.java:67) at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:47) at java.security.AccessController.doPrivileged(Native Method) at java.util.prefs.MacOSXPreferencesFile.(MacOSXPreferencesFile .java:82) 在 java.util.prefs.MacOSXPreferences.cfFileForNode(MacOSXPreferences.java:137) 在 java.util.prefs.MacOSXPreferences.(MacOSXPreferences.java:103) 在 java.util.prefs.MacOSXPreferences.(MacOSXPreferences.java:77) 在 java.util.prefs.MacOSXPreferences.getUserRoot(MacOSXPreferences.java:58) 在 java.util.prefs.MacOSXPreferencesFactory.userRoot(MacOSXPreferencesFactory.java: 30) 在 java.util.prefs.Preferences.userRoot(Preferences.java:457) 在 java.util.prefs.Preferences.userNodeForPackage(Preferences.java:371) 在 org.springframework.uaa.client.util.PreferencesUtils.getPreferencesFor (PreferencesUtils.java:34) 在 org.springframework.uaa.client.internal.UaaServiceImpl.(UaaServiceImpl.java:71) 在 org.springframework.uaa.client.UaaServiceFactory.getUaaService(UaaServiceFactory.java:61) 在 org.springframework .uaa.client.UaaServiceFactory.getUaaService(UaaServiceFactory.java:42) 在 org.springframework.roo.uaa。UaaRelatedComponentRegistrationHelper.activate(UaaRelatedComponentRegistrationHelper.java:28) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 43) 在 java.lang.reflect.Method.invoke(Method.java:606) 在 org.apache.felix.scr.impl.helper.BaseMethod.invokeMethod(BaseMethod.java:227) 在 org.apache.felix.scr .impl.helper.BaseMethod.access$500(BaseMethod.java:38) 在 org.apache.felix.scr.impl.helper.BaseMethod$Resolved.invoke(BaseMethod.java:591) 在 org.apache.felix.scr。在 org.apache.felix.scr.impl.helper.ActivateMethod.invoke(ActivateMethod.java:146) 在 org.apache.felix 的 impl.helper.BaseMethod.invoke(BaseMethod.java:472)。scr.impl.manager.ImmediateComponentManager.createImplementationObject(ImmediateComponentManager.java:226) 在 org.apache.felix.scr.impl.manager.ImmediateComponentManager.createComponent(ImmediateComponentManager.java:118) 在 org.apache.felix.scr.impl。 manager.AbstractComponentManager$Unsatisfied.activate(AbstractComponentManager.java:997) 在 org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:333) 在 org.apache.felix.scr.impl.manager。 AbstractComponentManager.enable(AbstractComponentManager.java:157) at org.apache.felix.scr.impl.config.ConfiguredComponentHolder.enableComponents(ConfiguredComponentHolder.java:256) at org.apache.felix.scr.impl.BundleComponentActivator.loadDescriptor(BundleComponentActivator. java:253) 在 org.apache.felix.scr.impl。BundleComponentActivator.initialize(BundleComponentActivator.java:147) 在 org.apache.felix.scr.impl.BundleComponentActivator.(BundleComponentActivator.java:111) 在 org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:285 ) 在 org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:807) 在 org.apache.felix 的 org.apache.felix.scr.impl.Activator.bundleChanged(Activator.java:203)。 framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:729) 在 org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:610) 在 org.apache.felix.framework.Felix.fireBundleEvent(Felix. java:3879) 在 org.apache.felix.framework.Felix.startBundle(Felix.java:1850) 在 org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:第1192章

2013 年 11 月 12 日晚上 10:38:53 org.springframework.roo.felix.JdkDelegatingLogListener logNow 严重:[org.springframework.roo.uaa [71]] [org.springframework.roo.uaa.UaaRelatedComponentRegistrationHelper] 组件实例无法已创建,激活失败

4

1 回答 1

1

我找不到 JDK 7 的真正解决方案,所以我最后只是简单地将我的 JAVA_HOME 变量指向 java 6,它现在可以工作了。

JDK 7安装和OSX雪豹之间的交互一定有一些我无法理解的特殊性。

于 2013-11-17T00:53:43.813 回答