无法在 Windows 环境中启动 Pentaho BI 服务器
Unable to to start Pentaho BI Server on Windows environment
我是 Pentaho BI 服务器的新手。我已经下载了 Pentaho BI Server 的社区版 (biserver-ce-6.0.1.0-386),我正尝试在 Windows 10 (x64) 机器上 运行 它。我已经按照 http://akbarahmed.com/2012/05/12/install-pentaho-bi-server-4-5-on-windows-7-x64/ 中的建议设置了 "PENTAHO_JAVA_HOME" 环境路径变量(这是针对旧版本的 BI Server,但我认为相同的方法也适用于此处).
当我运行开始-pentaho.bat时,这是我得到的输出:
G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce>start-pentaho.bat
DEBUG: Using PENTAHO_JAVA_HOME
DEBUG: _PENTAHO_JAVA_HOME=C:\Program Files (x86)\Java\jdk1.7.0_79
DEBUG: _PENTAHO_JAVA=C:\Program Files (x86)\Java\jdk1.7.0_79\bin\java.exe
Using CATALINA_BASE: "G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat"
Using CATALINA_HOME: "G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat"
Using CATALINA_TMPDIR: "G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat\temp"
Using JRE_HOME: "C:\Program Files (x86)\Java\jdk1.7.0_79"
Using CLASSPATH: "G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat\bin\bootstrap.jar;G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat\bin\tomcat-juli.jar"
命令提示符 window 短暂出现然后消失。此后我没有收到任何错误消息,但是如果我访问 http://localhost:8080,似乎没有服务器正在侦听端口 8080。
当我尝试停止 BI Server 时,我得到的是:
G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce>stop-pentaho.bat
DEBUG: Using PENTAHO_JAVA_HOME
DEBUG: _PENTAHO_JAVA_HOME=C:\Program Files (x86)\Java\jdk1.7.0_79
DEBUG: _PENTAHO_JAVA=C:\Program Files (x86)\Java\jdk1.7.0_79\bin\java.exe
Using CATALINA_BASE: "G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat"
Using CATALINA_HOME: "G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat"
Using CATALINA_TMPDIR: "G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat\temp"
Using JRE_HOME: "C:\Program Files (x86)\Java\jdk1.7.0_79"
Using CLASSPATH: "G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat\bin\bootstrap.jar;G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat\bin\tomcat-juli.jar"
13-Mar-2016 03:06:22.590 SEVERE [main] org.apache.catalina.startup.Catalina.stopServer Could not contact localhost:8005. Tomcat may not be running.
13-Mar-2016 03:06:22.605 SEVERE [main] org.apache.catalina.startup.Catalina.stopServer Catalina.stop:
java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:579)
at java.net.Socket.connect(Socket.java:528)
at java.net.Socket.<init>(Socket.java:425)
at java.net.Socket.<init>(Socket.java:208)
at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:450)
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.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:400)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:487)
请让我知道我做错了什么以及如何纠正这个问题。
已解决: 我发现问题是由于尝试使用 32 位 Java。我看到了这条消息,
WARNING [main] org.apache.catalina.core.AprLifecycleListener.init The APR based Apache Tomcat Native library failed to load. The error reported was [G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat\bin\tcnative-1.dll: Can't load AMD 64-bit .dll on a IA 32-bit platform]
我将 PENTAHO_JAVA_HOME 环境变量设置为指向我系统上安装的 64 位 JDK,现在,Pentaho BI 服务器按预期启动。
我在 AMD Athlon/Windows 10 Home(32 位)上尝试启动 Pentaho BI 服务器社区版 5.3/JRE7 时遇到了完全相同的行为。对我有用的解决方案是将 Tomcat 作为 Windows 服务启动,如下所示:
(注:以下注释假设Pentaho BI Server安装在C:\Pentaho)
编辑系统环境变量以包括以下内容:
PENTAHO_JAVA_HOME = C:\Program Files\Java\jre7
如果另一个应用程序正在使用端口 8080,请编辑 C:\Pentaho \biserver-ce\tomcat\conf\server.xml 文件以替换每个匹配项端口 8080 的新端口号,例如8081.
使用管理员命令提示符,导航至 C:\Pentaho\biserver-ce\tomcat\bin 和 运行 命令:
service.bat install
(有关详细信息,请参阅 https://tomcat.apache.org/tomcat-6.0-doc/windows-service-howto.html)。
在同一管理员命令提示符下,运行
tomcat6w.exe
启动允许您启动和关闭服务以及修改服务设置的应用程序。应用程序的图形用户界面打开。
在应用程序中,修改Tomcat设置如下:
(a) 在“日志记录”选项卡下,确保日志 sub-directory 在 tomcat 目录下 - 例如:
C:\Pentaho\biserver-ce\tomcat\logs
(b) 在“Java”选项卡下,在“Java 选项”文本框(打开C:\Pentaho\biserver-ce\start-pentaho.bat 使用文本编辑器查看 32 位和 64 位处理器设置——下面的设置适用于 32 位处理器:
-Xms256m
-Xmx768m
-XX:MaxPermSize=256m
-Dsun.rmi.dgc.client.gcInterval=3600000
-Dsun.rmi.dgc.server.gcInterval=3600000
(c) 在“启动”选项卡下,确保“工作路径”文本框中的值指向 \tomcat\bin sub-directory - 例如:
C:\Pentaho\biserver-ce\tomcat\bin
(有关详细信息,请参阅 Shivan 于 2016 年 12 月 7 日提供的解决方案 Pentaho Initialization Exception)。
在“常规”选项卡下,单击“开始”按钮启动 Pentaho BI 服务器。
使用您的网络浏览器,使用 link http://localhost:8081/ 启动 Pentaho BI 服务器。 此时应该会出现 Pentaho 登录屏幕 - 它确实适合我。
使用 Pentaho 后,您可以通过单击“停止”按钮正常关闭 Tomcat 服务。
我是 Pentaho BI 服务器的新手。我已经下载了 Pentaho BI Server 的社区版 (biserver-ce-6.0.1.0-386),我正尝试在 Windows 10 (x64) 机器上 运行 它。我已经按照 http://akbarahmed.com/2012/05/12/install-pentaho-bi-server-4-5-on-windows-7-x64/ 中的建议设置了 "PENTAHO_JAVA_HOME" 环境路径变量(这是针对旧版本的 BI Server,但我认为相同的方法也适用于此处).
当我运行开始-pentaho.bat时,这是我得到的输出:
G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce>start-pentaho.bat
DEBUG: Using PENTAHO_JAVA_HOME
DEBUG: _PENTAHO_JAVA_HOME=C:\Program Files (x86)\Java\jdk1.7.0_79
DEBUG: _PENTAHO_JAVA=C:\Program Files (x86)\Java\jdk1.7.0_79\bin\java.exe
Using CATALINA_BASE: "G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat"
Using CATALINA_HOME: "G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat"
Using CATALINA_TMPDIR: "G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat\temp"
Using JRE_HOME: "C:\Program Files (x86)\Java\jdk1.7.0_79"
Using CLASSPATH: "G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat\bin\bootstrap.jar;G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat\bin\tomcat-juli.jar"
命令提示符 window 短暂出现然后消失。此后我没有收到任何错误消息,但是如果我访问 http://localhost:8080,似乎没有服务器正在侦听端口 8080。
当我尝试停止 BI Server 时,我得到的是:
G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce>stop-pentaho.bat
DEBUG: Using PENTAHO_JAVA_HOME
DEBUG: _PENTAHO_JAVA_HOME=C:\Program Files (x86)\Java\jdk1.7.0_79
DEBUG: _PENTAHO_JAVA=C:\Program Files (x86)\Java\jdk1.7.0_79\bin\java.exe
Using CATALINA_BASE: "G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat"
Using CATALINA_HOME: "G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat"
Using CATALINA_TMPDIR: "G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat\temp"
Using JRE_HOME: "C:\Program Files (x86)\Java\jdk1.7.0_79"
Using CLASSPATH: "G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat\bin\bootstrap.jar;G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat\bin\tomcat-juli.jar"
13-Mar-2016 03:06:22.590 SEVERE [main] org.apache.catalina.startup.Catalina.stopServer Could not contact localhost:8005. Tomcat may not be running.
13-Mar-2016 03:06:22.605 SEVERE [main] org.apache.catalina.startup.Catalina.stopServer Catalina.stop:
java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:579)
at java.net.Socket.connect(Socket.java:528)
at java.net.Socket.<init>(Socket.java:425)
at java.net.Socket.<init>(Socket.java:208)
at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:450)
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.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:400)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:487)
请让我知道我做错了什么以及如何纠正这个问题。
已解决: 我发现问题是由于尝试使用 32 位 Java。我看到了这条消息,
WARNING [main] org.apache.catalina.core.AprLifecycleListener.init The APR based Apache Tomcat Native library failed to load. The error reported was [G:\Pentaho\biserver-ce-6.0.1.0-386\biserver-ce\tomcat\bin\tcnative-1.dll: Can't load AMD 64-bit .dll on a IA 32-bit platform]
我将 PENTAHO_JAVA_HOME 环境变量设置为指向我系统上安装的 64 位 JDK,现在,Pentaho BI 服务器按预期启动。
我在 AMD Athlon/Windows 10 Home(32 位)上尝试启动 Pentaho BI 服务器社区版 5.3/JRE7 时遇到了完全相同的行为。对我有用的解决方案是将 Tomcat 作为 Windows 服务启动,如下所示:
(注:以下注释假设Pentaho BI Server安装在C:\Pentaho)
编辑系统环境变量以包括以下内容:
PENTAHO_JAVA_HOME = C:\Program Files\Java\jre7
如果另一个应用程序正在使用端口 8080,请编辑 C:\Pentaho \biserver-ce\tomcat\conf\server.xml 文件以替换每个匹配项端口 8080 的新端口号,例如8081.
使用管理员命令提示符,导航至 C:\Pentaho\biserver-ce\tomcat\bin 和 运行 命令:
service.bat install
(有关详细信息,请参阅 https://tomcat.apache.org/tomcat-6.0-doc/windows-service-howto.html)。
在同一管理员命令提示符下,运行
tomcat6w.exe
启动允许您启动和关闭服务以及修改服务设置的应用程序。应用程序的图形用户界面打开。
在应用程序中,修改Tomcat设置如下:
(a) 在“日志记录”选项卡下,确保日志 sub-directory 在 tomcat 目录下 - 例如:
C:\Pentaho\biserver-ce\tomcat\logs
(b) 在“Java”选项卡下,在“Java 选项”文本框(打开C:\Pentaho\biserver-ce\start-pentaho.bat 使用文本编辑器查看 32 位和 64 位处理器设置——下面的设置适用于 32 位处理器:
-Xms256m -Xmx768m -XX:MaxPermSize=256m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000
(c) 在“启动”选项卡下,确保“工作路径”文本框中的值指向 \tomcat\bin sub-directory - 例如:
C:\Pentaho\biserver-ce\tomcat\bin
(有关详细信息,请参阅 Shivan 于 2016 年 12 月 7 日提供的解决方案 Pentaho Initialization Exception)。
在“常规”选项卡下,单击“开始”按钮启动 Pentaho BI 服务器。
使用您的网络浏览器,使用 link http://localhost:8081/ 启动 Pentaho BI 服务器。 此时应该会出现 Pentaho 登录屏幕 - 它确实适合我。
使用 Pentaho 后,您可以通过单击“停止”按钮正常关闭 Tomcat 服务。