Wildfly CLI 不适合我
Posted
技术标签:
【中文标题】Wildfly CLI 不适合我【英文标题】:Wildfly CLI not working for me 【发布时间】:2014-07-06 13:47:16 【问题描述】:我所做的只是下载 wildfly-8.1.0.CR2 并解压缩它。 Standalone.bat 和 add-user.bat 工作,但 jboss-cli.bat 不工作。
F:\wildfly-8.1.0.CR2\bin>jboss-cli
java.lang.UnsatisfiedLinkError: Could not load library. Reasons: [no jansi64-1.9 in
java.library.path, no jansi-1.9 in java.library.path, no jansi in java.library.path,
D:\pgarner\AppData\Local\Temp\jansi-64-1.9.dll: The application has failed to start
because its side-by-side configuration is incorrect. Please see the application event
log or use the command-line sxstrace.exe tool for more detail]
at org.fusesource.hawtjni.runtime.Library.doLoad(Library.java:184)
at org.fusesource.hawtjni.runtime.Library.load(Library.java:142)
at org.fusesource.jansi.internal.Kernel32.<clinit>(Kernel32.java:37)
at org.fusesource.jansi.WindowsAnsiOutputStream.<clinit>(WindowsAnsiOutputStream.java:52)
at org.jboss.aesh.terminal.WindowsTerminal.init(WindowsTerminal.java:53)
at org.jboss.aesh.console.Console.setTerminal(Console.java:193)
at org.jboss.aesh.console.Console.reset(Console.java:154)
at org.jboss.aesh.console.Console.<init>(Console.java:105)
at org.jboss.aesh.console.Console.<init>(Console.java:101)
at org.jboss.as.cli.impl.Console$Factory.getConsole(Console.java:85)
at org.jboss.as.cli.impl.Console$Factory.getConsole(Console.java:78)
at org.jboss.as.cli.impl.CommandContextImpl.initBasicConsole(CommandContextImpl.java:349)
at org.jboss.as.cli.impl.CommandContextImpl.<init>(CommandContextImpl.java:296)
at org.jboss.as.cli.impl.CommandContextFactoryImpl.newCommandContext(CommandContextFactoryImpl.java:76)
at org.jboss.as.cli.impl.CliLauncher.initCommandContext(CliLauncher.java:273)
at org.jboss.as.cli.impl.CliLauncher.main(CliLauncher.java:253)
at org.jboss.as.cli.CommandLineMain.main(CommandLineMain.java:34)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.jboss.modules.Module.run(Module.java:312)
at org.jboss.modules.Main.main(Main.java:460)
Press any key to continue . . .
当我使用standalone.bat 启动 Wildfly 时,我在 server.log 中看到 java.library.path 的以下条目:
java.library.path = F:\Java\jdk1.7.0_45\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;F:\WANdisco\uberSVN \bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;F:\GnuPG\pub;F:\7- Zip;"E:\WebTest\build\bin";F:\WANdisco\uberSVN\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\ WindowsPowerShell\v1.0\;F:\GnuPG\pub;F:\7-Zip;.
当我尝试运行 jboss-cli 时,以下文件确实出现在我的文件系统中:
D:\pgarner\AppData\Local\Temp\jansi-64-1.9.dll
我也尝试使用 wildfly-8.0.0.Final 而不是 wildfly-8.1.0.CR2 并且发生了同样的问题。
如何解决这个问题?我认为 CLI 在从 zip 文件中提取所有文件后应该可以直接使用。
【问题讨论】:
【参考方案1】:我们面临同样的错误,问题是由于 jansi dll 依赖关系。事实上,您需要安装与您的平台相对应的 Microsoft Visual C++ 2008 Redistributable Package。对于 x64,您可以点击此链接:
http://www.microsoft.com/en-US/download/details.aspx?id=2092
【讨论】:
天哪,有人会认为 Wildfly 团队会知道这种事情。用 Java 编写的应用服务器需要安装 Microsoft Visual C++ 2008,这似乎违反直觉!【参考方案2】:有类似的问题。我可以启动 Wildfly 并毫无错误地部署我的应用程序,但每次我重新部署我的应用程序时,都会收到以下错误:
原因:
java.lang.UnsatisfiedLinkError:无法加载库。理由:[没有 java.library.path 中的 jansi64-1.9,java.library.path 中没有 jansi-1.9, java.library.path 中没有 jansi,本机库 C:\Users\zb\AppData\Local\Temp\jansi-64-1.9.dll 已加载 另一个类加载器]
这个 jansi 库在部署后似乎卡住了。
暂时重启服务器会有帮助。
【讨论】:
你解决过这个问题吗?在我的 Windows 构建服务器上运行 wildfly 作为托管 arquillian 容器时,我遇到了完全相同的问题。第一个实例运行,但它想创建另一个wildfly实例,发生了这个确切的错误。以上是关于Wildfly CLI 不适合我的主要内容,如果未能解决你的问题,请参考以下文章