首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从PHP/Apache运行时犀牛失败

从PHP/Apache运行时犀牛失败
EN

Stack Overflow用户
提问于 2014-04-22 15:36:02
回答 1查看 128关注 0票数 0

为了允许在带有JavaScript的PHP应用程序中进行一些基本的定制,我尝试使用库。我的一些开发盒没有最新的、功能良好的SpiderMonkey包可用。因此,为了继续开发,我编写了一个非常简单的rhino包装器来完成这项工作--同样,也是为了开发和测试目的。

这似乎是在一台机器上工作。当从命令行运行脚本时,它可以在所有的机器上工作。但是,当通过Apache运行时,它会产生以下错误:

代码语言:javascript
复制
Exception in thread "main" java.lang.NullPointerException at 
java.lang.VMClassLoader.defineClass(libgcj.so.10) at 
java.lang.ClassLoader.defineClass(libgcj.so.10) at 
java.security.SecureClassLoader.defineClass(libgcj.so.10) at 
java.net.URLClassLoader.findClass(libgcj.so.10) at 
gnu.gcj.runtime.SystemClassLoader.findClass(libgcj.so.10) at 
java.lang.ClassLoader.loadClass(libgcj.so.10) at 
java.lang.ClassLoader.loadClass(libgcj.so.10) at 
gnu.java.lang.MainThread.run(libgcj.so.10)

我是否需要通过权限或$PATH-wise来使rhino在Apache/httpd进程中正确执行?(在CentOS 6上)

从控制台并通过Apache,java --version生成:

代码语言:javascript
复制
java version "1.5.0"
gij (GNU libgcj) version 4.4.7 20120313 (Red Hat 4.4.7-4)

Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
EN

回答 1

Stack Overflow用户

发布于 2014-04-22 22:35:13

我有几个建议。

首先,考虑使用gcj以外的Java实现。这很容易成为一个gcj bug,如果不与您的环境完全匹配,我们就无法真正找到它。您也是在命令行上使用gcj,还是使用其他一些Java实现?这可能是关键的区别。

如果这真的不是一个选项,我没有证据支持我的信念,但我会尝试将Rhino优化级别设置为-1,如果您还没有。当使用0或1运行时,Rhino会在类级别上尝试一些积极的优化技术,这可能会使gcj感到困惑。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23223973

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档