簡體   English   中英

啟動Jetty-Service時出錯(Solr)

[英]Error Starting Jetty-Service (Solr)

更新:我安裝了32位JDK,服務現在開始正常。 不知道為什么。 失敗的機器是64位......

Update2:所以安裝32位JDK將允許安裝服務,但solr將無法運行。 日志中有StackOverflowException和NullPointer Excpetions。

我試圖在Windows 7 64位上運行Jetty作為服務。 我讓它在一台非常相似的機器上運行就好了,但是第二次我得到的錯誤我無法解決。

該服務安裝正常,但是當您嘗試啟動它時,您將在控制台中收到消息:Jetty6-Service服務已啟動,但無法啟動。

在此輸入圖像描述

這是jetty-service.log中的相關內容:

STATUS | wrapper  | 2011/02/16 12:50:07 | Starting the Jetty6-Service service...
STATUS | wrapper  | 2011/02/16 12:50:07 | --> Wrapper Started as Service
DEBUG  | wrapper  | 2011/02/16 12:50:07 | Using tick timer.
DEBUG  | wrapperp | 2011/02/16 12:50:07 | server listening on port 32000.
STATUS | wrapper  | 2011/02/16 12:50:07 | Launching a JVM...
DEBUG  | wrapper  | 2011/02/16 12:50:07 | command: "java" -Djetty.home=../ -Djetty.logs=../logs -Dsolr.solr.home=C:/solr/ -Xms5m -Xmx64m -Djava.library.path="../lib/win32/" -classpath "../lib/win32/jetty-win32-service-java-6.1.26.jar;../lib/win32/wrapper.jar;../lib/jetty-6.1.3.jar;../lib/jetty-util-6.1.3.jar;../lib/servlet-api-2.5-6.1.3.jar;../start.jar" -Dwrapper.key="c5CIhIjsO0gmMcTE" -Dwrapper.port=32000 -Dwrapper.jvm.port.min=31000 -Dwrapper.jvm.port.max=31999 -Dwrapper.debug="TRUE" -Dwrapper.pid=4708 -Dwrapper.version="3.2.3" -Dwrapper.native_library="wrapper" -Dwrapper.service="TRUE" -Dwrapper.cpu.timeout="10" -Dwrapper.jvmid=1 org.mortbay.jetty.win32service.JettyServiceWrapperListener ../etc/jetty.xml
FATAL  | wrapper  | 2011/02/16 12:50:07 | Unable to execute Java command.  The system cannot find the file specified. (0x2)
FATAL  | wrapper  | 2011/02/16 12:50:07 |     "java" -Djetty.home=../ -Djetty.logs=../logs -Dsolr.solr.home=C:/solr/ -Xms5m -Xmx64m -Djava.library.path="../lib/win32/" -classpath "../lib/win32/jetty-win32-service-java-6.1.26.jar;../lib/win32/wrapper.jar;../lib/jetty-6.1.3.jar;../lib/jetty-util-6.1.3.jar;../lib/servlet-api-2.5-6.1.3.jar;../start.jar" -Dwrapper.key="c5CIhIjsO0gmMcTE" -Dwrapper.port=32000 -Dwrapper.jvm.port.min=31000 -Dwrapper.jvm.port.max=31999 -Dwrapper.debug="TRUE" -Dwrapper.pid=4708 -Dwrapper.version="3.2.3" -Dwrapper.native_library="wrapper" -Dwrapper.service="TRUE" -Dwrapper.cpu.timeout="10" -Dwrapper.jvmid=1 org.mortbay.jetty.win32service.JettyServiceWrapperListener ../etc/jetty.xml
FATAL  | wrapper  | 2011/02/16 12:50:07 | Critical error: wait for JVM process failed
ERROR  | wrapper  | 2011/02/16 12:50:09 | The Jetty6-Service service was launched, but failed to start.

我所知道的兩台機​​器之間的一個區別是,那台不工作的機器已經安裝了Tomcat,它已經不再安裝了。

我嘗試過以下方法:

  1. 卸載了Java JDK和JRE的所有副本
  2. 重新安裝了最新的Java JDK - jdk1.6.0_24,它安裝了相關的JRE
  3. 嘗試將JAVA_HOME設置為C:\\ Program Files \\ Java \\ jdk1.6.0_24
  4. 用Google搜索所有錯誤消息
  5. 我可以在控制台中運行java -version而不會出錯

如果有人正在尋找有關將Jetty作為服務運行的更多信息,請查看:

  1. http://docs.codehaus.org/display/JETTY/Win32Wrapper
  2. http://technologyenablingbusiness.blogspot.com/2010/12/solr-on-jetty-as-windows-service.html

這對我有用:

添加到bin\\jetty-service.conf:頂部bin\\jetty-service.conf:

wrapper.java.command=%JAVA_HOME%\jre\bin\java.exe

請注意我的系統中的JAVA_HOME設置為:

JAVA_HOME=C:\Java\jdk1.6.0_35

我正在使用64位JVM:

C:\>java -version
java version "1.6.0_35"
Java(TM) SE Runtime Environment (build 1.6.0_35-b10)
Java HotSpot(TM) 64-Bit Server VM (build 20.10-b01, mixed mode)

在某些x64機器上,Java Service Wrapper作為Jetty Service的一部分包含在內似乎存在問題。

Java Service Wrapper的社區版本不支持x64。 如果我在他們的網站上使用方法4下載並合並標准版或專業版,那么事情就會奏效。

http://wrapper.tanukisoftware.com/doc/english/download.jsp

我有service jetty start問題

得到錯誤:

在Java Home中找不到VM

解決方案是改變

/etc/default/jetty

JAVA_HOME=/usr/lib/jvm/java-7-oracle/jre

我看起來你的路徑設置不正確。

您應該能夠從命令行單獨運行此命令(從上面復制)

“java”-Djetty.home = .. / -Djetty.logs = .. / logs -Dsolr.solr.home = C:/ solr / -Xms5m -Xmx64m -Djava.library.path =“../ lib / win32 /“-classpath”../lib/win32/jetty-win32-service-java-6.1.26.jar;../lib/win32/wrapper.jar;../lib/jetty-6.1.3.jar; ../lib/jetty-util-6.1.3.jar ;../lib/servlet-api-2.5-6.1.3.jar;../start.jar“-Dwrapper.key =”c5CIhIjsO0gmMcTE“-Dwrapper。 port = 32000 -Dwrapper.jvm.port.min = 31000 -Dwrapper.jvm.port.max = 31999 -Dwrapper.debug =“TRUE”-Dwrapper.pid = 4708 -Dwrapper.version =“3.2.3”-Dwrapper。 native_library =“wrapper”-Dwrapper.service =“TRUE”-Dwrapper.cpu.timeout =“10”-Dwrapper.jvmid = 1 org.mortbay.jetty.win32service.JettyServiceWrapperListener ../etc/jetty.xml

當你這樣做時,它應該告訴你問題是什么。 只需從我假設的同一目錄/ bin運行它。

java版jar是否與命令中的版本相同(6.1.26)?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM