2016-05-20 73 views
0

在Ubuntu上安装NEXUS-3.0.0-03 16.04 LTS后(没有X)我有以下错误:的Nexus 3.0.0-03启动在Ubuntu

java.util.NoSuchElementException 
    at java.util.LinkedList.removeFirst(LinkedList.java:270) 
    at com.exe4j.runtime.util.ArgumentStack.popString(ArgumentStack.java:14) 
    at com.install4j.runtime.launcher.UnixLauncher.main(UnixLauncher.java:37) 
java.util.NoSuchElementException 
Exception in thread "main" java.awt.HeadlessException: 
No X11 DISPLAY variable was set, but this program performed an operation which requires it. 
    at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:204) 
    at java.awt.Button.<init>(Button.java:152) 
    at com.exe4j.runtime.util.MessageBox.addChoice(MessageBox.java:151) 
    at com.exe4j.runtime.util.MessageBox.addChoice(MessageBox.java:163) 
    at com.install4j.runtime.launcher.ErrorHandler.displayGuiErrorMessage(ErrorHandler.java:14) 
    at com.install4j.runtime.launcher.ErrorHandler.reportError(ErrorHandler.java:22) 
    at com.install4j.runtime.launcher.UnixLauncher.main(UnixLauncher.java:71) 

命令我使用的启动服务:

/usr/lib/jvm/java-8-oracle/jre/bin/java -server -Dinstall4j.jvmDir=/usr/lib/jvm/java-8-oracle/jre -Dexe4j.moduleName=/opt/nexus/bin/nexus -Dinstall4j.launcherId=245 -Dinstall4j.swt=false -Di4jv=0 -Di4jv=0 -Di4jv=0 -Di4jv=0 -Di4jv=0 -Xms256M -Xmx768M -XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass -Djava.net.preferIPv4Stack=true -Dkaraf.home=. -Dkaraf.base=. -Dkaraf.etc=etc -Djava.util.logging.config.file=etc/java.util.logging.properties -Dkaraf.data=data -Dkaraf.instances=data/instances -Djava.io.tmpdir=data/tmp -Dkaraf.startLocalConsole=false -Di4j.vpt=true -classpath /opt/nexus/.install4j/i4jruntime.jar:/opt/nexus/lib/karaf.jar:/opt/nexus/lib/karaf-org.osgi.core.jar:/opt/nexus/lib/karaf-jmx-boot.jar:/opt/nexus/lib/karaf-jaas-boot.jar:/opt/nexus/lib/karaf-nexus-branding.jar com.install4j.runtime.launcher.UnixLauncher run 9d17dc87 org.apache.karaf.main.Main 

你可以配置Nexus不使用X11吗?将不胜感激的任何建议。

UPDATE

使用时开始的Nexus:

./nexus run 

它正常启动,但它不作为服务运行即可。

回答

0

X11不是必需的,但Nexus 3确实使用install4j作为启动器,并且在某些错误情况下,不幸的是可能会尝试弹出对话框(可从堆栈跟踪中看到)。

检查日志以查看是否有更多信息。也很好奇,从你的描述看来,你可能没有使用bin/nexus脚本?你应该使用它。请看这里:http://books.sonatype.com/nexus-book/3.0/reference/install.html#service-linux

+0

谢谢你的回答。在问题中有在开始时打印的完整堆栈跟踪。 在命令中(从systemctl start nexus命令中检索)有一部分使用bin/nexus: -Dexe4j.moduleName =/opt/nexus/bin/nexus 更新了我的问题。 –